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

JavaSc正则表达式

"1a2b3c4d5e".match(/\d\w\d/g),这样结果会匹配到1a2 3c4 ,但是匹配不到2b3和4d5了。这要怎么办?

正在回答

6 回答

直接上代码,不懂啥意思,刚学,方法太复杂,肯定有简单的。。。

用正则表达式匹配一定是有一定规律的。。。http://img1.sycdn.imooc.com//58103f3d0001f0f405290234.jpg

0 回复 有任何疑惑可以回复我~

match在全局匹配中也有lastIndex类似的属性,当检索到1a2时,指针移到了b的位置,自然匹配不到2b3了,当检索到最后时,lastIndex再变为0

0 回复 有任何疑惑可以回复我~
#1

iceWang

但是查了下,没找到lastIndex属性
2017-10-07 回复 有任何疑惑可以回复我~

"1a2b3c4d5e".replace(/(\d)(?=(\w\d))/g,'$1$2').match(/\d\w\d/g);

2 回复 有任何疑惑可以回复我~

http://img1.sycdn.imooc.com//5810420900013f6307080135.jpg



第一句是把一个字符串转换一个数组,因为加了一个“,”连接了2个数组,导致变成了字符串;


第二句是查看reg1里的元素;


第三句是测试reg1是否为数组;

1 回复 有任何疑惑可以回复我~

那你就匹配a2b3和c4d5呗(/\w\d\w\d/g)

0 回复 有任何疑惑可以回复我~

感觉看了可以   发现用正则表达式来修改更简单


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JavaScript正则表达式
  • 参与学习       96820    人
  • 解答问题       119    个

JavaScript正则表达式教程,理解之后,正则表达式比你想象的简单

进入课程

JavaSc正则表达式

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信