对于那些在kotlin从事regExps经验丰富的人来说,我有一个问题。
我需要在String内的花括号中找到所有单词。假设我们有下一个字符串:
“ {用户} 将问题从 {fromStatus} 更改为 {toStatus} ”
我正在使用以下正则表达式:
\{+(\w)+}
我尝试使用不同的站点来测试我的regExp,并且效果很好,我什至编写了JUnit测试来确保一切正常。但是当我启动应用程序时,我看到下一条消息:
java.util.regex.PatternSyntaxException: Syntax error in regexp pattern near index 9:
\{+(\w)+}
^
at java.util.regex.Pattern.compileImpl(Native Method)
at java.util.regex.Pattern.compile(Pattern.java:411)
at java.util.regex.Pattern.<init>(Pattern.java:394)
at java.util.regex.Pattern.compile(Pattern.java:381)
at kotlin.text.Regex.<init>(Regex.kt:89)
这是我的代码:
private fun initTemplate() {
"""\{+(\w)+}""".toRegex()
.findAll(TEST_STRING)
.forEach {
//some action
}
}
任何建议,如何解决此问题? 你能告诉我我的错误在哪里吗?
预先感谢