正则表达式适用于regex101.com,但不适用于prod

正则表达式适用于regex101.com,但不适用于prod,
Warning: implode(): Invalid arguments passed in /data/phpspider/zhask/webroot/tpl/detail.html on line 45
,,(?:(?请确保始终在regex101.com上选择正确的正则表达式引擎。请查看由于使用正则表达式而出现的问题 在回答这个问题时,JS regex不支持lookbehinds。现在,它在以后越来越多地被采用。您在这里并不真正需要它,因为您可以使用捕获组: var re=/(?:\s| ^)@(\s+)/g; var str='s@vln1\n@vln2\n′; var-res=[]; while((m=re.exec(str))!==null){ res.push(m[1]); } conso


(?:(?请确保始终在regex101.com上选择正确的正则表达式引擎。请查看由于使用正则表达式而出现的问题

在回答这个问题时,JS regex不支持lookbehinds。现在,它在以后越来越多地被采用。您在这里并不真正需要它,因为您可以使用捕获组:

var re=/(?:\s| ^)@(\s+)/g;
var str='s@vln1\n@vln2\n′;
var-res=[];
while((m=re.exec(str))!==null){
res.push(m[1]);
}

console.log(res);
JavascriptOh,thx!:D我不知道:D Erm…我知道如何达到我的目标,而不是?:)下次小心选择
JavaScript
选择左侧的JavaScript选项非常有用,可以验证语法对JS实际有效,而不仅仅是对PCRE(默认值)有效在什么情况下RegEx不应该匹配?我的主要目标是获取开始和结束索引。什么的索引?在
@
@之后的pos?在'@'和单词结尾的索引。现在在字符串开始的情况下,我得到0,在中间文本的情况下,得到索引-1(匹配空格的coz)@Kindzoku让我们回顾一下-为什么需要索引?因为我不确定正则表达式是否有用,即使它有效。我添加了另一个片段来返回
@\s+
-匹配值的开始和结束位置列表。真的,不知道为什么需要它们。
var regex = new RegExp(/(?:(?<=\s)|^)@(\S+)/g);