我想解析一个字符串并找到所有的句柄(@name)并将它们每个推入一个数组(虽然没有@
),所以我可以遍历它们(使用forEach
)并向它们发送警报。每个手柄由一个空格隔开。
最佳答案
尝试
let str= "Here @ann and @john go to @jane";
let m= str.match(/@\w+/g).map(x=>x.replace(/./,''));
m.forEach(x=> console.log(x));
您还可以在正则表达式后面使用正向后视,但firefox yet不支持它(但它是ES2018的一部分):
let str= "Here @ann and @john go to @jane";
let m= str.match(/(?<=@)\w+/g);
m.forEach(x=> console.log(x));
其中
(?<=@)\w+
与@之后的单词匹配(不包括此字符-positive lookbehind)关于javascript - RegEx-通过字符串解析特定单词,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55566047/