带有lookahead和lookahead的Javascript正则表达式是错误的?

带有lookahead和lookahead的Javascript正则表达式是错误的?,javascript,regex,lookahead,lookbehind,Javascript,Regex,Lookahead,Lookbehind,我使用下面的正则表达式来匹配单词“/”和“?”之间的“/”,在“?”前面加上一个可能的正斜杠“/”,但由于某种原因,它没有说有无效的量词。你知道为什么它可能是错误的吗?我尝试删除“/?”,但它仍然显示相同的内容 var n=str.match(/(?<=\/)stores\/?(?=\?)/); var n=str.match(/(?我认为这是无效的部分:(?仅供参考JavaScript不支持lookbehindsoh,我明白了。任何适用于这种情况的工作区?问题是我只想匹配单词store

我使用下面的正则表达式来匹配单词“/”和“”之间的“/”,在“”前面加上一个可能的正斜杠“/”,但由于某种原因,它没有说有无效的量词。你知道为什么它可能是错误的吗?我尝试删除“/?”,但它仍然显示相同的内容

var n=str.match(/(?<=\/)stores\/?(?=\?)/);

var n=str.match(/(?我认为这是无效的部分:(?仅供参考JavaScript不支持lookbehindsoh,我明白了。任何适用于这种情况的工作区?问题是我只想匹配单词stores(即使没有可能存在的“/”,我无论如何都无法做到)抱歉,我只是一个正则表达式的新手。有什么提示吗?哦,我明白了…嗯,像\/stores(?=\/?\?)这样的东西会起作用吗?前瞻会确保尾随的/和?不匹配,所以现在你只剩下一个数组,其中有一堆'/stores'字符串。根据你想对匹配项做什么,我想你可以使用array.forEach(function(element,index,array){array[index]=element.slice(1)}删除/。我明白了,我试图避免额外的处理,但显然我别无选择,非常感谢!
\/stores\/?\?