我有这个正则表达式
((.*?)(\(.*?\))|(.*?))
我想删除|因为我认为有更好的方法来匹配这个。以下是我希望它匹配的一些示例字符串
myString
myString(1234)
如果它有括号我想将括号内容作为单独的捕获组捕获。它永远不必捕获两种类型的字符串。
答案 0 :(得分:3)
由于(...)
部分是可选的,您可以使与其匹配的子正则表达式也可选:
((.*?)(\(.*?\))?)
答案 1 :(得分:0)
只需使用
.*?(\(.*?\))?
这使得括号内的部分可选,如果括号内的部分不存在,则第一个.*?
将匹配所有内容。