知道如何在以下内容中仅捕获 <{em> para2
和para3
吗?
foo(para, para2="some string", para3="some string")
答案 0 :(得分:3)
要匹配以空格或括号开头并以等号开头的字母数字术语,请在括号内全部显示:
(?<=[\s|])\w+(?==[^()]*\))
&#34;在括号内&#34;由前瞻(?==[^()]*\))
强制执行,这是一个文字=
,然后是任意数量的非括号,然后是一个封闭的括号 - 换句话说,&#34;下一个括号字符是关闭的托架&#34;
答案 1 :(得分:1)
这个可以帮到你,
你的字符串,
var str = 'foo(para, para2="some string", para3="some string")'
RegExp(这里我使用的是Javascript方法,但这种模式可以用于任何语言),
str.match(/\w+(?==)/g) // returns => ["para2", "para3"]
一切顺利。