我尝试为此字符串创建一个模式:(abcde ...
,它看起来像这样:
\b(?=[(])[a-zA-Z_0-9]+\b
我希望选择abcde
。
为什么这不起作用?
答案 0 :(得分:2)
您似乎正在寻找后面的(?<=
)Javascript Regex不支持,尝试捕获您需要的模式并使用match
提取它:< / p>
console.log(
"(abcde...".match(/\((\w+)\b/)[1]
)
答案 1 :(得分:0)
有两个原因。
来源(abcde ...
现在检查以下正则表达式:
\b(?=[(])([a-zA-Z_0-9]+)\b # doesn't match
\b(?=[(]).([a-zA-Z_0-9]+)\b # doesn't match
最后:
(?=[(]).([a-zA-Z_0-9]+)\b # matches
所以,从逻辑上讲,在第一个正则表达式中,\ b匹配&#39;(&#39;。之后,前瞻失败。
答案 2 :(得分:0)