javascript 正则匹配的问题

图片描述
图片描述

请问1图的正则两个有什么具体的区别? 如果没有区别的话 那么 为什么在webpack的正则不能用[a|b|c]??
请大神帮忙看一下 谢谢

阅读 2.1k
3 个回答

根据正则的概述:
1、()表示里面的内容为子表单式
2、[]表示中括号表达式。

()内容是表单式;[]是内容。所以结果是不一样的。

上面的匹配 .a 或 .| 或 .b 或 .c 结尾的
下面的匹配 .a 或 .b 或 .c 结尾的

有区别:

let reg1=/\.[a|b|c]$/;
let reg2=/\.(a|b|c)$/;
'.|'.match(reg1);//Truthy
'.|'.match(reg2);//FalsY

[] 表示里面的字符都可以出现,所以reg1相当于/\.(?:a|b|c|\|)$/

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