正则表达式子 ⼀a*?⼀和⼀aa*?⼀为什么不一样?

var A= "aaaababb"A.match(/a*?/);//什么都没有A.match(/aa*?/)//可以查到
2025-03-11 04:49:23
推荐回答(1个)
回答1:

a*?表示字符a的0个到多个非贪婪匹配,因为是非贪婪匹配,所以最小为0个a,所以输出为空字符串

aa*?表示字符a和字符a的0个到多个非贪婪匹配,因为有至少一个a所以输出为一个a,它相当于a+?(字符a的1个到多个非贪婪匹配)

你的Javascript程序,应该这样写