氧化氮
2016-12-25 11:40
$str ="m88m";
$pattern1 ='/字母*\d?字母*/’;//匹配成功,$match[0]=m8;
$pattern2 ='/字母\d?字母/’;//匹配失败
根据?:前面字符只出现1次或0次,应两种pattern 都失败,为什么pattern1会匹配成功和$match会这样显示?
?为懒惰模式,匹配尽量少的pattern,不存在匹配多个则失败的情况。
字母*:字母出现0次或多次 ,\d?: 数字出现0次或1次。 m8 中 m出现了一次,8出现一次 这是符合的
PHP进阶篇
181837 学习 · 2577 问题
相似问题
回答 1