我正在尝试在标签后匹配文字。
这是我目前的进展:
字符串:"这里有一些文字#BestRappaAlive #CategoryK #test #sadsadsadsa更多文字"
正则表达式:A
-12
-11
-10
...
11
12
-12
-11
...
11
12
所需的输出:/(?:#)(\w+)\b/g
当前输出:["BestRappaAlive","CategoryK","test","sadsadsadsa"]
这看似微不足道(我可以循环切片),但我很好奇我哪里出错了。
答案 0 :(得分:1)
js中没有lookbehind(除了在chrome中扩展),你的正则表达式是正确的,使用regex.exec并获得第一个捕获组:
function extract(str){
var rgx = /#(\w+)\b/gi;
var result = [];
var temp;
while(temp = rgx.exec(str)){
result.push(temp[1])
}
return result;
}
extract("Here sometext #BestRappaAlive #CategoryK #test #sadsadsadsa some more text");//["BestRappaAlive", "CategoryK", "test", "sadsadsadsa"]