为了账号安全,请及时绑定邮箱和手机立即绑定

新手问一个正则表达式的问题?

新手问一个正则表达式的问题?

呼如林 2019-03-05 16:57:06
x='"a","b"';y=x.replace(/([^"]*)/g,"'$1'");为何返回值会是:''"'a'''"','''"'b'''"'' ?/([^"]*)/g捕捉的不应该只是a和b吗,为什么会返回这么多引号?谢谢回答
查看完整描述

2 回答

?
森林海

TA贡献2011条经验 获得超2个赞

正则的问题 * 匹配任意次,越多越好,也就是说,空白也匹配,匹配 0 次

https://img1.sycdn.imooc.com//5c80d5f50001cc9702350056.jpg

你实际上把上面匹配到的 7 个字符串都用它的捕获组去替换了,举个例子

首先,字符串开头的空白你匹配到了,$1是空白,然后你把开头的空白替换成了'$1',实际上就是'',所以你的字符串开头多了''

后面的类似,,,,你慢慢分析吧


查看完整回答
反对 回复 2019-03-07
  • 2 回答
  • 0 关注
  • 445 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信