半小時學會正規表示式(五)

2021-05-23 02:06:10 字數 985 閱讀 2530

簡單化一點, 我們可以用 eregi()取代 ereg().eregi()對大小寫不敏感, 我們就不需要指定兩個範圍 "a-z" 和 "a-z" – 只需要指定乙個就可以了:

^[_a-z0-9-]+(/.[_a-z0-9-]+)*$

後面的伺服器 名字也是一樣,但要去掉下劃線:

^[a-z0-9-]+(/.[a-z0-9-]+)*$

好. 現在只需要用」@」把兩部分連線:

^[_a-z0-9-]+(/.[_a-z0-9-]+)*@[a-z0-9-]+(/.[a-z0-9-]+)*$

這就是完整的 email認證匹配模式了,只需要呼叫

eregi(『^[_a-z0-9-]+(/.[_a-z0-9-]+)*@[a-z0-9-]+(/.[a-z0-9-]+)*$ 』,$eamil)

就可以得到是否為email了

正規表示式的其他用法

提取字串

ereg() and eregi() 有乙個特性是允許使用者通過正規表示式去提取字串的一部分,比如說,我們想從 path/url 提取檔名 – 下面的**就是你需要:

ereg("([^///]*)$", $pathorurl, $regs);

echo $regs[1];

高階的代換

ereg_replace() 和 eregi_replace()也是非常有用的: 假如我們想把所有的間隔負號都替換成逗號:

ereg_replace("[ /n/r/t]+", ",", trim($str));

最後,我把另一串檢查email的正規表示式讓看文章的你來分析一下.

"^[-!#$%&/'*+//./0-9=?a-z^_`a-z~]+'.'@'.'[-!#$%&/'*+///0-9=?a-z^_`a-z~]+/.'.'[-!#$%&/'*+//./0-9=?a-z^_`a-z~]+$"

如果能方便的讀懂,那這篇文章的目的就達到了.

半小時學會正規表示式(二)

你也可以在大括號裡面限制字元出現的個數,比如 ab 要求a後面一定要跟兩個b 乙個也不能少 abb ab 要求a後面一定要有兩個或者兩個以上b 如 abb abbbb 等.ab 要求a後面可以有2 5個b abbb abbbb or abbbbb 現在我們把一定幾個字元放到小括號 裡,比如 a bc...

正規表示式 五

3 匹配郵箱位址 root svr5 vim mailadd.txt bill microsoft 無效的郵箱位址,用作測試 suen11 20 163.com root svr5 egrep 0 9a za z 0 9a za z.0 9a za z mailadd.txt hackli gmai...

學會使用正規表示式

1.用正規表示式判定郵箱是否輸入正確。import re r w w w w e 1546122489 qq.com if re.match r,e print re.match r,e group 0 else print error 2.用正規表示式識別出全部 號碼 import re numb...