PHP 限定符(? * +{n,m})
經常使用Google的用戶可能會發(fā)現(xiàn),在搜索結果頁的下方,Google中間字母o的個數(shù)會隨著搜索頁的改變而改變。那么要匹配該字串的正則表達式該如何實現(xiàn)呢?
對于這類重復出現(xiàn)字母或字串,可以使用限定符來實現(xiàn)匹配。限定符主要有6種,如表所示。
限定符 | 說 明 | 舉 例 |
? | 匹配前面的字符零次或一次 | colou?r,該表達式可以匹配colour和color |
+ | 匹配前面的字符一次或多次 | go+gle,該表達式可以匹配的范圍從gogle到gocr"gle |
* | 匹配前面的字符零次或多次 | go*gle,該表達式可以匹配的范圍從ggle到goo…gle |
{n} | 匹配前面的字符n次 | go{2}gle,該表達式只匹配google |
{n,} | 匹配前面的字符最少n次 | go{2,}gle,該表達式可以匹配的范圍從google到goo…gle |
{n,m} | 匹配前面的字符最少n次,最多m次 | employe{0,2},該表達式可以匹配employ、employe 和 employee 3種情況 |
可以發(fā)現(xiàn),在表中實際己經對字符串進行了匹配,只是還不完善。通過觀察發(fā)現(xiàn),當Google搜索結果只有一頁時,不顯示Google標志,只有大于等于2時,才顯示Google。說明字母o最少為兩個,最多為20個,那么正則表達式為:
go{2,20}gle
點擊加載更多評論>>