我需要有正则表达式的帮助,它会计算开头和关闭的括号。
示例:
"hello ( asdas ) hello ("
应返回1.
" ( . / . \n sssss ) ( hey ( hello )"
应返回2.
所以模式看起来像:(+ anthing +)。
谢谢!
修改的
我试过像\(.*\)
这样的东西。这不是很好,因为.
没有采取新的行。
答案 0 :(得分:1)
\(.*\)
模式在行的第一个(
到最后一个)
之间取任何东西(如果未设置DOTALL修饰符),或直到最后)
在整个字符串中(如果设置了DOTALL修饰符)。您需要限制此模式。
要匹配(
到下一个)
的子字符串,您可以使用基于正则表达式的否定字符类:
\([^)]*\)
请参阅regex demo
<强>解释强>
\(
- 文字(
[^)]*
- 除)
\)
- 关闭)
否定的字符类也会匹配换行符号(如果有的话)。