我需要创建一个包含字符串中所有主题标签的数组。例如:
测试#nature #love#instacool #anothertogether #likeforlike,#rellax。
多行... #festival -
更多文字#aaa \ n#anotherhashtag
结果将是:
try {
//This block throws the exception.
}
Catch(Exception e) {
//This block will run next.
}
此案例的REGEX应该是什么?我尝试了一些我在互联网上找到但在给定的例子中没有用的东西。
答案 0 :(得分:4)
使用以下方法:
var str = 'Testing #nature #love#instacool#anothertogether #likeforlike, #relax. \nmulti-line... #festival-- some more text #aaa \n#anotherhashtag';
console.log(str.match(/#\w+/g).map(v => v.replace('#', '')));
答案 1 :(得分:0)
在旗帜mg
中,
m
表示'多行',
g
表示“全局搜索”。
`Testing #nature #love#instacool#anothertogether #likeforlike, #relax.
multi-line... #festival--
some more text #aaa \n#anotherhashtag`.match(/#\w+/mg).map(s => s.substr(1))
答案 2 :(得分:0)
您需要使用RegExp#exec。使用下一个解决方案:
var str = "Testing #nature #love#instacool#anothertogether #likeforlike, #relax. \n multi-line... #festival-- \nsome more text #aaa \n#anotherhashtag";
var re = /#(\w+)/g;
var res = [];
while (var buf = re.exec(str)) {
res.push(buf[1]);
}
console.log(res);