JavaScript正则表达式:匹配所有主题标签,仅在哈希字符后捕获文本

时间:2018-04-30 18:15:28

标签: javascript regex

我正在尝试在标签后匹配文字。

这是我目前的进展:

字符串:"这里有一些文字#BestRappaAlive #CategoryK #test #sadsadsadsa更多文字"

正则表达式:A -12 -11 -10 ... 11 12 -12 -11 ... 11 12

所需的输出:/(?:#)(\w+)\b/g

当前输出:["BestRappaAlive","CategoryK","test","sadsadsadsa"]

这看似微不足道(我可以循环切片),但我很好奇我哪里出错了。

https://regexr.com/3oop4

1 个答案:

答案 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"]