4

为什么要使用 return["vddv"]而不是 ["dd"]:

"aaavddv".match(/(?:v).*(?:v)/)
4

3 回答 3

4
(?:v) # matches 'v' this is a non-capturing group, not a lookbehind
.*    # matches 'dd'
(?:v) # matches 'v' this is a non-capturing group, not a lookahead

非捕获组仍然参加比赛。也许您想要前瞻/后视?但是Javascript不支持lookbehind。

于 2012-05-23T12:33:18.367 回答
3
"aaavddv".match(/(?:v)(.*)(?:v)/)[1]

整个匹配是正确的,vddv但是如果您只想匹配,则dd需要使用捕获组(并查看 element [1]

于 2012-05-23T12:33:08.010 回答
3

/(?:v).*(?:v)/指定表达式 v(字符数)v

于 2012-05-23T12:34:05.823 回答