修改月光博客網(wǎng)站中PHP常用正則表達(dá)式中出現(xiàn)的錯誤

字號:


    這篇文章主要介紹了修改月光博客網(wǎng)站中PHP常用正則表達(dá)式中出現(xiàn)的錯誤,需要的朋友可以參考下
    最近研究正則表達(dá)式。看到很多朋友需要IP地址的正則表達(dá)式,網(wǎng)上找了一下,一開始就找到了月光博客網(wǎng)站模板上的找了半天沒有找到完整解決IP地址的正則表達(dá)式不要緊,我隨便驗證了上面一個正則表達(dá)式結(jié)果不匹配,所以就自己寫了一個,與大家分享其中可能會出現(xiàn)很多錯誤希望大家多多指點,多多包涵。
    很多情況下因為新規(guī)則的不斷出現(xiàn),就需要增加一些兼容規(guī)則。學(xué)正則表達(dá)式就是學(xué)的思路,拿來主義者不好。
    1. $reg='/[\x-\x]+/u';//驗證是否為中文字符
    2. $reg='/\n\s*\r/';//驗證是否為空白行
    這里肯定會有很多人不知道空白行是什么意思我這里就操作一下,如下
    代碼如下:
    <?php
    $str="";
    $reg='/\n\s*\r/';
    if(preg_match($reg,$str)){
    echo"通過空白行驗證";
    }else{
    echo"沒有通過空白行驗證";
    }
    ?>
    這樣就可以解決一些代碼冗余
    3. $reg='/<[\/]?\w+>/is';//驗證HTML開始和結(jié)束標(biāo)記
    4. $reg='/^[\s*]|[\s*]$/';//匹配首尾空白字符的正則表達(dá)式(以空白字符開始或者以他結(jié)尾)
    5. $reg='/^0\d{2,3}-[1-9]\d{6,7}$/';//匹配國內(nèi)電話地址的正則表達(dá)式:
    6. $reg='/^[1-9][0-9]{4,}$/';//匹配騰訊QQ號
    7. $reg='/^\d$/';//中國大陸郵政編碼
    8. $reg='/^[1-9]\d$/';//中國大陸15位的身份證
    $reg='/^[1-9]\d(\d|x|y)$/';//中國大陸18位的身份證包括后面的字母
    9. $reg='/^(25[0-5]|2[0-4][0-9]|[0-1][0-9]|[1-9][0-9]|[1-9])\. (25[0-5]|2[0-4][0-9]|[0-1][0-9]|[1-9][0-9]|[1-9]|0)\.(25[0-5]|2[0-4] [0-9]|[0-1][0-9]|[1-9][0-9]|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1][0-9]| [1-9][0-9]|[0-9])$/';//驗證IP
    這里我也解釋下如下:
    IP分為5類:
    A類 1.0.0.0~126.0.0.0
    B類 128.0.0.0~191.255.255.255
    C類 192.0.0.0~223.255.255.255
    D類 224.0.0.0~239.255.255.255
    E類 240.0.0.0~255.255.255.255
    先解釋(25[0-5]|2[0-4][0-9]|[0-1][0-9]|[1-9][0-9]|[1-9])是什么意思。我們先把IP拆開分為4 節(jié)就容易懂些了。第一節(jié),250~255或200~249或100~199或10~99或1~9是不是很清晰,第一節(jié)不能為0.后面的就可以以此類推了
    10. $reg='/^[1-9][0-9]*$/';//匹配正整數(shù)
    11. $reg='/^-[1-9][0-9]*$/';//匹配負(fù)整數(shù)
    12. $reg='/^-?(0|([1-9]\d*))$/';//匹配整數(shù)(這里要注意小括號的運用)
    13. $reg='/^([1-9]\d*\.\d*)|(0\.\d*)$/';//匹配正浮點數(shù)
    14. $reg='/^(0|([1-9]\d*[0|2|4|6|8]))$/';//匹配偶數(shù)
    15. $reg='/^[A-Za-z0-9]\w{5,17}@[A-Za-z0-9]([A-Z]|[a-z]|[0-9]|_)+(\.[A-Za-z]{2,6}){1,2}$/';//匹配Email地址的正則表達(dá)式:
    16. $reg='/^[A-Za-z]\w{5,19}$/';//匹配用戶名必須以字母開頭,由字母、數(shù)字、下劃線組成,長度為6~20
    本文純屬個人觀點絕無針對,如有不對之處請諒解請指正