我想在字符串中找到完整的单词。但我不知道如何在Kotlin中查找所有单词。我要查找的单词是[非字母]cba[非字母]。以下是我的示例代码。
val testLink3 = """cba@cba cba"""
val word = "cba"
val matcher = "\\b[^a-zA-Z]*(?i)$word[^a-zA-Z]*\\b".toRegex()
val ret = matcher.find(testLink3)?.groupValues
但是我的源代码输出是"cba",我期望的值是字符串数组,例如"{cba, cba, cba}"。如何在Kotlin语言中找到这个值。
cba@@@cba cba
,那么预期结果将是什么?我可以“解决”这个问题,使用val matcher = "(?i)(?=(\\b[^A-Z]*$word[^a-zA-Z]*\\b))".toRegex()
和val ret = matcher.findAll(testLink3).map{it.groupValues[1].trim()}.toList().distinct()
。但它可能会提取比您预期更多的内容。 - Wiktor Stribiżew