RegExp怪异的情况

时间:2019-04-05 09:17:21

标签: android regex kotlin

对于那些在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
            }
}

任何建议,如何解决此问题? 你能告诉我我的错误在哪里吗?

预先感谢

0 个答案:

没有答案