title: 当正则匹配零个字符 categories:
"something".match(/\s*(.*?)\s*/)
> ['', '']
"something".match(/^\s*(.*?)\s*$/)
> ["something", "something"]
为何前者匹配的结果为空?
如果你不清楚正则的贪婪模式和非贪婪模式,请先移步这里.
整个匹配分为三步:
可能这么说还是不太清晰,先看看这个对比: <!--<source src="https://cloud.githubusercontent.com/assets/2698003/2816541/7e6c1076-cecb-11e3-823e-640e1b53ca00.jpg">-->
关于返回结果不是 null 而是 "",你可以理解为匹配到了零个 a。