'12345678'.replace(/\d??/g,'X')的结果为什么是"X1X2X3X4X5X6X7X8X"

来源:2-7 JS正则贪婪模式与非贪婪模式

qq_泥巴的城_0

2019-07-01 20:36

'12345678'.replace(/\d??/g,'X')的结果为什么是"X1X2X3X4X5X6X7X8X"

写回答 关注

2回答

  • 慕勒3194548
    2019-07-09 18:10:38
    已采纳

    "1a2a345678a".replace(/\d?/g,'X')结果XaXXaXXXXXXXaX

    从以上结果可以得知\d?匹配数字或者不是数字之后的""。

    \d??优先匹配“”。

    "12345678".replace(/\d??/g,'X')匹配字符串中所有的""

    "1a2a345678a".replace(/\d??/g,'X')结果为X1XaX2XaX3X4X5X6X7X8XaX



  • 慕勒3194548
    2019-07-09 18:15:22

    /d??当匹配到1时,先匹配符合规则1"",把1后面的""替换为X

JavaScript正则表达式

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

96812 学习 · 119 问题

查看课程

相似问题