关于正则表达式 /\[[^\]]*]/g

/\[[^\]]*]/g
正则新手。 请问下大家 这个正则是什么意思。感谢。

阅读 2.2k
1 个回答
  • \[ 表示匹配 [ ,其中 \ 转义。
  • [^\]]] 中 第一个 [ 和最后一个 ] 表示这中间是一个字符集合,紧跟着有一个 ^\] 这里 ^ 表示不要匹配,\]
  • 然后 * 表示匹配 0 次或者多次。
  • 最后还有一个 ],其实在这里也表示匹配 ] 这个字符,你可能会疑惑,为什么前面的匹配非 ] 都用的 \] 而这里却不需要转义了?这是因为在这里,前面已经没有 [ 用来和他组成组了,所以他是可以忽略不转义的。

最外面的 g 在 JS 中可以理解为多次匹配。

整个正则的意思就是,匹配用 [] 方括号包起来的字符串,可能是 [][测试] 等。

image.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题