php正则表达式限制数字个数

2024-11-02 12:37:43
推荐回答(2个)
回答(1):

\d{4} 这个意思其实是可以匹配至少4个连续的数字,就是说123肯定匹配不上,但是像1234,12345,1234abc这种,只要其中有4个数字连续的,都可以匹配上。如果想卡死只匹配四个数字,那么得加上开始和结束符 ^\d{4}$

回答(2):

\d{4} 没有起始结束符,表示匹配四个数字,
1. 字数少于4个
匹配不到
2. 字数多余4个
preg_match 匹配到一次就结束匹配,$match[1]结果cnt 是1 ;如果用preg_match_all ,有八个数字,可以匹配第二次,即 $match[1]结果cnt 是2,以此类推