我试图在两个子串之间找到所有内容。例如:;jklasdfj;lkasdf=~~=alksdjf;lkajsd09823409283mvlb()*#@(*$(=^^=lkjdflkdjfkljdf
我想找到= ~~ =和= ^^ =
之间的所有内容我尝试了/(?<=\=\~\~\=).*?(?=\=\^\^\=/)/
,但这是一个无效的正则表达式。我该如何解决这个问题?
答案 0 :(得分:0)
你正在使用Javascript正则表达不支持的lookbehinds。尝试使用此表达式,并在括号之间恢复捕获的组的值:
> text = '=~~=hello=^^='
> regex = /=~~=(.*)=\^\^=/
> text.match(regex)
[ '=~~=hello=^^=', 'hello', index: 0, input: '=~~=hello=^^=' ]
返回数组的元素[1]
将是该组的值。如果上面的示例(来自Node shell)不清楚,请参阅有关MDN上match
method的更多信息。