怎么用PHP正則表達(dá)式匹配連續(xù)的數(shù)字或字母-創(chuàng)新互聯(lián)

這篇文章主要介紹“怎么用PHP正則表達(dá)式匹配連續(xù)的數(shù)字或字母”,在日常操作中,相信很多人在怎么用PHP正則表達(dá)式匹配連續(xù)的數(shù)字或字母問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么用PHP正則表達(dá)式匹配連續(xù)的數(shù)字或字母”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

成都創(chuàng)新互聯(lián)公司擁有網(wǎng)站維護(hù)技術(shù)和項目管理團(tuán)隊,建立的售前、實(shí)施和售后服務(wù)體系,為客戶提供定制化的成都網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)、網(wǎng)站維護(hù)、雙線服務(wù)器托管解決方案。為客戶網(wǎng)站安全和日常運(yùn)維提供整體管家式外包優(yōu)質(zhì)服務(wù)。我們的網(wǎng)站維護(hù)服務(wù)覆蓋集團(tuán)企業(yè)、上市公司、外企網(wǎng)站、商城網(wǎng)站建設(shè)、政府網(wǎng)站等各類型客戶群體,為全球成百上千企業(yè)提供全方位網(wǎng)站維護(hù)、服務(wù)器維護(hù)解決方案。

正則表達(dá)式的寫法規(guī)則:"/規(guī)則需要寫在2個斜杠中間/"。

  • . :小數(shù)點(diǎn))用于匹配除換行符之外的所有字符。

  • \s:反斜杠小寫s)用于匹配單個空格符,包括tab鍵和換行符;

  • \S:反斜杠大寫S)用于匹配除單個空格符之外的所有字符;

  • \d:反斜杠d)用于匹配從0到9的數(shù)字;也可以這樣寫:[0-9]

  • \w:反斜杠小寫w)用于匹配字母,數(shù)字或下劃線字符;

  • \W:反斜杠大寫W)用于匹配所有與\w不匹配的字符;

元字符包括:+*,?

元字符理解起來容易混淆,所以我在后面做了代碼結(jié)果截圖


復(fù)制代碼 代碼如下:


“+”元字符規(guī)定其前導(dǎo)字符必須連續(xù)出現(xiàn)一次或多次

= 比如/es+/
與“tesseessssseast12354haeasashaha”字符串相匹配,首先要與第一個字母e匹配,然后匹配s,s必須出現(xiàn)一次或多次,請看實(shí)例截圖。

“*”元字符規(guī)定其前導(dǎo)字符必須出現(xiàn)零次或連續(xù)多次

= 比如/es*/
與“tesseessssseast12354haeasashaha”字符串相匹配,首先與第一個字母e匹配,后面的s出現(xiàn)零次或者連續(xù)出現(xiàn),看實(shí)例。

“?”元字符規(guī)定其前導(dǎo)對象必須連續(xù)出現(xiàn)零次或一次

= 比如/es?/
與“tesseessssseast12354haeasashaha”字符串相匹配,首先與第一個字母e匹配,后面的s出現(xiàn)零次或者最多出現(xiàn)一次(就是最后一個字母s不重復(fù)出現(xiàn))。



示例代碼:


復(fù)制代碼 代碼如下:


$str = "tesseessssseast12354haeasashaha";
echo "=====".$str."
";
echo "/es+/:".preg_replace("/es+/","-\\0-",$str)."
";
echo "/es*/:".preg_replace("/es*/","-\\0-",$str)."
";
echo "/es?/:".preg_replace("/es?/","-\\0-",$str)."
";
?>


執(zhí)行結(jié)果截圖:

怎么用PHP正則表達(dá)式匹配連續(xù)的數(shù)字或字母

另外如果覺得元字符“+*?”比較難理解可以用這種{ }方法代替:

比如es*我們可以寫成es{0,},而es+我們可以寫成es{1,},es?可以寫成es{0,1},注意:當(dāng)不確定次數(shù)的時候就不用寫(也不用空格)。

當(dāng)然我們要指定出現(xiàn)多少次的可以寫成這樣:es{3}表示s出現(xiàn)3次

舉一反三:

比如要替換連續(xù)多個空格為一個空格,我可以這樣寫:preg_replace("/\s+/"," ",$str);
比如要找出字符串中的數(shù)字(整數(shù))preg_replace("/\d+/", "(\\0)", $str);   \\0是表示符合規(guī)則的字符串值

比如要找出字符串中的帶小數(shù)點(diǎn)的數(shù)字preg_replace("/\d+\.\d+/", "(\\0)", $str); //這里的“\.”表示輸出小數(shù)點(diǎn)

找出由字母組成的字符串:preg_replace("/[a-zA-Z]+/", "(\\0)", $str)

找出由(字母、數(shù)字混合)組成的字符串:preg_replace("/([a-zA-Z]|\d)+/", "(\\0)", $str)

正則表達(dá)式中“或”運(yùn)算,使用 “ | ”

例如上面的例子:找出由(字母或數(shù)字)混合組成的字符串([a-zA-Z]|\d)也可以這樣寫([a-zA-Z]|[0-9])

^”出現(xiàn)在 “[ ]”內(nèi)時就被視做否定運(yùn)算符;[^0-9]表示除了數(shù)字之外的任何字符。

而當(dāng)“^”位于“[ ]”之外,或沒有“[ ]”時,則應(yīng)當(dāng)被視做定位符。

定位符的意思就是比如:“^The”:開頭一定要有”The”字符串;類似的:“en$”:$符號表示必須是en結(jié)尾。


到此,關(guān)于“怎么用PHP正則表達(dá)式匹配連續(xù)的數(shù)字或字母”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

文章標(biāo)題:怎么用PHP正則表達(dá)式匹配連續(xù)的數(shù)字或字母-創(chuàng)新互聯(lián)
網(wǎng)站網(wǎng)址:http://bm7419.com/article4/gggoe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計公司定制網(wǎng)站、商城網(wǎng)站定制開發(fā)、云服務(wù)器建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)