问答详情
源自:2-5 JS预定义类及边界

'@123@abc@'.replace(/@./g,'Q')

'@123@abc@'.replace(/@./g,'Q')  为什么 @. 输出结果就只是前两个@变成Q了,最后一个没有变化


提问者:qq_Vae流浪_0 2019-09-18 12:30

个回答

  • Ray_Loy
    2019-09-19 21:33:13

    "."表示除了回车符和换行符的任意单个字符,与原意文本字符“@”连用构成的正则规则匹配的是“@某某”,即只有后面有其他字符的”@“和该字符构成的整体会被匹配到

  • qq_Vae流浪_0
    2019-09-18 12:33:28

    明白了,@加上任意字符被替换,我理解成@和任意字符被替换,那为啥@.就是@加上任意一个字符被替换,而不是前面说到的[]里面任意一个符合都被执行那