javascript regexp用于带有括号的单词边界检测

suz*_*zee 5 javascript regex

我有一个字符串"我是一个机器人,我被命名为456/m(4).忘了名字(它没有任何意义)"

现在我想从这个字符串中提取所有单词,我使用正则表达式:

/\b[\w\S]+\b/g
Run Code Online (Sandbox Code Playgroud)

它返回字符串中的所有单词,除了有一个单词"456 /(4"而不是"456 /(4)".我明白这是因为它是一个单词边界,但是在那里我可以说它不是一个合法的单词边界,因为没有"合法的"起始括号?

d0n*_*nut 4

我现在做得更好了。它完全符合您的要求。

\b(?>\([\w\/]+\)|[\w\/])+
Run Code Online (Sandbox Code Playgroud)

正则表达式101

如果你想要一个对 javascript 友好的版本:

((?:(?=(\([\w\/]+\)|[\w\/]))\2)+)
Run Code Online (Sandbox Code Playgroud)

此处只需使用捕获组#1。

正则表达式101