问答详情
源自:2-9 前瞻

js正则前瞻, 负向前瞻

'a2*34vv'.replace(/\w(?!\d)/g, 'X')

"aX*3XXX"      //最后一个v匹配怎么解释?谁能解释一下整体?


提问者:FE_FE 2018-10-19 17:13

个回答

  • 1frgdhf
    2019-02-18 16:07:32

    要先了解题目的意思,目的是要做什么?

    题目的意思为:负向前瞻,替代的条件是满足\ w前詹为非0-9的所有替换为X

    所以,要按照整体顺序

    a后面跟的是2    不满足为:a,2后为*  满足为:x,*后为3,不满足 为*,3后为4,不满足 3,

    如上所述,按照顺序最后一个v为空,符合条件,即为x,答案为aX*3XXX,


  • 昵称嘛
    2018-10-28 00:15:17

    \w 匹配字母或数字或下划线或汉字 

    最后一个v(\w)后面没有匹配的\d,所以成立。