kotlin字符串帮助在另一个字符串的任何元素匹配第一个/最后一个等的字符串中查找索引



C++具有类似find_first_of()find_first_not_of()find_last_of()的字符串函数,find_last_not_of()。例如,如果我写

string s {"abcdefghi"};
  • s.find_last_of("eaio")返回i 的索引

  • s.find_first_of("eaio")返回的索引

  • s.find_first_not_of("eaio")返回b 的索引

Kotlin有等效物吗。

Kotlin没有这些确切的函数,但它们都是indexOfFirstindexOfLast的特例:

fun CharSequence.findFirstOf(chars: CharSequence) = indexOfFirst { it in chars }
fun CharSequence.findLastOf(chars: CharSequence) = indexOfLast { it in chars }
fun CharSequence.findFirstNotOf(chars: CharSequence) = indexOfFirst { it !in chars }
fun CharSequence.findLastNotOf(chars: CharSequence) = indexOfLast { it !in chars }

如果找不到任何内容,这些将返回-1。

用法:

val s = "abcdefghi"
val chars = "aeiou"
println(s.findFirstOf(chars))
println(s.findFirstNotOf(chars))
println(s.findLastOf(chars))
println(s.findLastNotOf(chars))

输出:

0
1
8
7

相关内容

  • 没有找到相关文章

最新更新