为什么要使用 return["vddv"]
而不是 ["dd"]:
"aaavddv".match(/(?:v).*(?:v)/)
(?: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。
"aaavddv".match(/(?:v)(.*)(?:v)/)[1]
整个匹配是正确的,vddv
但是如果您只想匹配,则dd
需要使用捕获组(并查看 element [1]
)
/(?:v).*(?:v)/
指定表达式 v(字符数)v