求解答。。

来源:2-9 前瞻

软萌淑

2019-09-17 19:53

'a2*3'.replace(/\w(?=\d)/g,'x')

"x2*3"

为什么a替换掉了而a后面的2却没有替换掉

写回答 关注

2回答

  • Ray_Loy
    2019-09-19 21:07:06
    已采纳

    这是使用了肯定前瞻进行了匹配吧,首先正则表达式是\w(?=\d),匹配的是一个单词字符,而assert部分筛选的是单词字符向字符串尾部方向的数字字符,这样就很明显了,本身又是单词字符,后面连接的还是数字字符的只有"a",所以只会把"a"replace成”x“。

  • Ray_Loy
    2019-09-19 21:39:12

    assert部分只相当于一个条件,帮助正则规则进行更深层次的筛选,最终目的还是为了找到“\w”字符,不会参与到替换操作中去

    软萌淑

    谢谢哟

    2019-09-23 20:11:17

    共 1 条回复 >

JavaScript正则表达式

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

96813 学习 · 119 问题

查看课程

相似问题