可能重复:
Flex RegExp到Java RegExp
我不知道为什么它不起作用..我正在使用java ..
...
String patternString = "([^{}]*{[^{}]+}[^{}])*";
Pattern p = Pattern.compile(patternString);
...
Run Code Online (Sandbox Code Playgroud)
我收到的错误是:
Illegal repetition near index 4
([^{}]*{[^{}]+}[^{}]*)
Run Code Online (Sandbox Code Playgroud)
你需要转义文字括号,除非它们在一个字符类中:
String patternString = "([^{}]*\\{[^{}]+\\}[^{}])*";
Run Code Online (Sandbox Code Playgroud)
大多数其他正则表达式都可以识别大括号何时不被用作重复运算符(如[0-9]{1,3}),因此将正确解析正则表达式.但Java坚持让这些大括号逃脱.
| 归档时间: |
|
| 查看次数: |
1297 次 |
| 最近记录: |