0


【Dart 教程系列第 34 篇】Dart 之 indexOf、lastIndexOf 获取指定元素在字符串的索引

这是【Dart 教程系列第 34 篇】,如果觉得有用的话,欢迎关注专栏。

indexOf

源码如下所示

intindexOf(Pattern pattern,[int start =0]);

语法

由前向后查找指定字符,返回值是 int 类型,如果有符合条件的则返回对应字符所在的索引,没有找到则返回 -1。

第一个参数是要查找的字符,支持正则表达式,后面如果看到 Pattern 类型的,都可以用正则表达式代替字符。

第二个为可选参数,从哪个索引处开始查找(包括该索引),默认为 0 ,其中 start 不能为负数,且不大于被查找字符的串长度。

举例

String text ="abcDcbaE";// 01 查找字符 c 第一次出现时的索引print(text.indexOf('c'));// 返回 2// 02 从索引 3 位置开始查找字符 c 第一次出现时的索引print(text.indexOf('c',3));// 返回 4// 03 查找字符 p 第一次出现时的索引print(text.indexOf('p'));// // 返回 -1// 04 使用正则表达式,查找第一次出现大写字母的字符时的索引print(text.indexOf(RegExp('[A-Z]')));// 返回 3

lastIndexOf

源码如下所示

intlastIndexOf(Pattern pattern,[int? start]);

语法

由后向前查找指定字符,返回值是 int 类型,如果有符合条件的则返回对应字符所在的索引,没有找到则返回 -1。需要事先说明的一点,倒序查找不是说索引也倒过来了。

第一个参数是要查找的字符,第二个为可选参数,从哪个索引处开始查找(包括该索引),没有默认值。

举例

String text ="abcDcbaE";// 01 倒序查找字符 a 第一次出现时的索引print(text.lastIndexOf('a'));// 返回 6// 02 从索引 2 位置倒序查找字符 a 第一次出现时的索引print(text.lastIndexOf('a',2));// 返回 0// 03 倒序查找字符 p 第一次出现时的索引print(text.lastIndexOf('p'));// 返回 -1// 04 使用正则表达式,倒序查找第一次出现大写字母的字符时的索引print(text.lastIndexOf(RegExp('[A-Z]')));// 返回 7

更多 Dart 的 String 字符串方法,推荐一篇博客 Dart 的 String 字符串的常用方法

你的问题得到解决了吗?欢迎在评论区留言。

赠人玫瑰,手有余香,如果觉得文章不错,希望可以给个一键三连,感谢。


结束语

**技术是一点一点积累的,大神也不是一天就可以达到的。原地不动就是退步,所以每天进步一点点。

最后,附上一句格言:"好学若饥,谦卑若愚",望共勉。**


本文转载自: https://blog.csdn.net/qq_42351033/article/details/120797302
版权归原作者 Allen Su 所有, 如有侵权,请联系我们删除。

“【Dart 教程系列第 34 篇】Dart 之 indexOf、lastIndexOf 获取指定元素在字符串的索引”的评论:

还没有评论