正則表達式在php中的應(yīng)用
正則表達式在web系統(tǒng)中的應(yīng)用廣泛,可以進行數(shù)據(jù)格式檢測、替換相關(guān)文本、提取感興趣的文本內(nèi)容等。
例:驗證字符串中E-mail地址的合怯性郵件地址格式是<用戶名@域名>,對于用戶名,除了數(shù)字和字母外,有的允許有"一"有的允許有".",也有的兩者皆可,或者允許其他的特殊字符。對此我們只能根據(jù)具體情況判斷。文中假設(shè)除字母和數(shù)字外還允許""""并且""""不能出現(xiàn)在首末位。"\"一"不能相連。域名中各段除數(shù)字和字母外只允許出現(xiàn)"一""一"且不能出現(xiàn)在首位和末位,各段用""連接.我們還可從域名得知最后一段大于一位且只有字母。根據(jù)以上內(nèi)容我們可以寫出表達式來判斷該串是否是合訟的郵件地址。
分步解釋如下:
^:匹配開始([a-zO-9A-Z]+[-丨\.]?)+:數(shù)字或字母大于l位"—"或""以上組合重復(fù)l次以上[a-zO-9A一Z]:用戶名以數(shù)字或字母結(jié)尾@:匹配"@"([a-zO-9A-Z]+:匹配多位數(shù)字或字母(一[a-zO-9A-Z]+)?:匹配一加多位數(shù)字或字母0次或1次\.:匹配".")+:匹配括號中內(nèi)容多次[a-zA-Zj{2,}:匹配字母2次以上$:匹配結(jié)尾把上面的各項組合→起,就可以匹配一個比較全面的郵件地址,正則表達式如下:
^([a-zO-9 A - Z]+[-I\.]?)+[a一zO-9A-Z]@([a-zO-9A - Z]+( -[a-zO-9 A - Z]+ )?\.)十[a-zA-Z]{2,}$實現(xiàn)匹配驗證的php程序腳本如下:
<? php
$email="lgj@ 163. com",11要檢測的email地址if (preg_match(" I飛[a-zO-9A-Z]+[|\.]? )+[a-zO-9 A - Z]@([a-zO-9A-Z]+(-[azO-9A-Z]+)?\. )+[a-zA-Zj{2, }$I\$email)){ I I開始檢測IJemail地址,筆耕論文新浪博客,不匹配返回Oecho"E-mail地址格式錯誤";}
else {echo"E-mail地址格式正確";}
? >
4結(jié)語正則表達式語也簡潔、功能強大,特別在對數(shù)據(jù)的驗證問題上。在日常數(shù)據(jù)處理與軟件開發(fā)中,正則表達式已成為不可缺少的工具,相信隨著web網(wǎng)的發(fā)展,正則表達式的應(yīng)用會越來越強大越來越易使用。
本文由整理發(fā)布,轉(zhuǎn)載請注明出處!
本文編號:5635
本文鏈接:http://www.lk138.cn/qitalunwen/5635.html