我想要一个字符串,该字符串必须在括号()
中,并以逗号,
分隔,例如:(aaa),(bbbb),(cccccccc)
我如何使用正则表达式匹配?
答案 0 :(得分:2)
你可以试试这个
^(?!,)(,?\(\w+\))+$
^
标志着字符串的开头
$
标记字符串
<{1}},^
都是必需的,否则它将在
$
匹配[a-zA-Z \ d _]
\w+
可选择匹配,?
,
会在字符串的开头查找^(?!,)
,如果找到它,则会进一步匹配。如果找不到,则返回上一个位置,即字符串的开头
答案 1 :(得分:1)
这应该这样做:
/^\(([^)])\1*\)(?:,\(([^)])\2*\))*$/
将backreferences用于repeated characters,围绕它们进行转义括号,并允许其后跟同一个many times - 用逗号分隔。在整个字符串上总共anchored。
答案 2 :(得分:0)
这个正则表达式
\(([^\)])\)
将匹配paresthenses内的所有内容。您可以使用它来查找子匹配或任何您需要的内容。
我建议您首先进行标记,将不同变量保存为逗号分隔的内容,然后使用正则表达式匹配括号内的内容。