如何使用正则表达式检查单词是否带有括号

时间:2018-09-21 17:20:51

标签: javascript node.js

我正在尝试将方括号内包含“ []”的单词分开,例如此行

“我讨厌[运行中]和[冒汗]”,我如何使用正则表达式只是为了检查一个单词是否包裹在“运行中”或“冒汗”或任何单词周围。

我尝试过了。但这没用。

if(data.word === /[ ]/){}

2 个答案:

答案 0 :(得分:3)

这是所需的表达式:

/\[([^\[\]]+)\]/

因此,以您的示例为例,我们将其应用如下:

"I hate [running] and [sweating]".match(/\[([^\[\]]+)\]/g) 这将导致带有大括号的单词,可以在单个单词上应用相同的单词,我们可以检查其是否匹配,以确定是否被方括号包围

答案 1 :(得分:-1)

您需要测试示例字符串并输出所有用方括号括起来的单词的正则表达式为/\[([\w]+)\]/g

[\w]+部分选择所有由字母数字字符组成的单词。包含\[\]明确匹配那些单词周围的方括号。括号()包围了描述应该返回哪些部分的模式。

我强烈推荐regex101.com作为方便的游乐场来尝试我们的正则表达式;这是我在编写上面的正则表达式以检查准确性时去的第一个地方。

有关如何实现此功能的示例,请参见here