站長資訊網
        最全最豐富的資訊網站

        正則表達式之匹配數字范圍

        最近有個需求就是根據產品編號批量下架產品,需要下架日期為16-31號之間的產品,

        比如編號為B201607280023匹配表達式如下:

        ^201607(1[6-9]|2[0-9]|3[0-1]).+

        邏輯很簡單,如果是必須是1或2或3開頭,如果是1開頭則后面范圍為6-9,如果是2開頭則為0-9,如果為3開頭則為0-1,因為7月份到31號

        同理,如果要匹配前半月的數據則是:

        ^B201607(0[0-9]|1[1-5]).+

        php正則表達式限制數字個數

        如何寫個正則表達式,只有4個數字才能匹配比如1234可以匹配,12345或者12數字個數不是4個的不能匹配?
        d{4}我試過不可以,12345超過5個數字的也匹配上了,不可以
        ^[0-9]{4}$可以,改變問題:為什么d{4}不行能??

        d{4} 這個意思其實是可以匹配至少4個連續的數字,就是說123肯定匹配不上,但是像1234,12345,1234abc這種,只要其中有4個數字連續的,都可以匹配上。如果想卡死只匹配四個數字,那么得加上開始和結束符 ^d{4}$

        正則表達式匹配1-255之間的正整數

        $p = ‘/^(25[0-5]|2[0-4]d|1dd|[1-9]d|[1-9])$/’;
        for($i=1; $i<=260; $i++)
        printf(“%4d %dn”, $i, preg_match($p, $i));

        樓大體上是對的,但是沒有加上單詞分隔符
        測試數據:
        11 123 301 9 10 31 30 33
        匹配出:
        11
        123
        30
        1
        9
        10
        31
        30
        33
        可見這與預期不符,因為該正則把301拆成30與1了
        正確如下:

        b25[0-5]b|b2[0-4]db|b1ddb|b[1-9]db|b[1-9]b

        如果還是不懂的朋友建議查看這篇文章:https://www.jb51.net/tools/zhengze.html

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 国产精品视频全国免费观看| 免费精品久久久久久中文字幕 | 国产精品1024视频| 日韩精品无码一区二区三区免费| 国产精品九九九| 国产精品视频网站| 亚洲精品亚洲人成人网| 国产午夜精品理论片久久| .精品久久久麻豆国产精品| 伊人久久精品无码av一区| 巨大黑人极品VIDEOS精品| 99亚洲精品视频| 99久久精品国产高清一区二区| 三上悠亚久久精品| 在线精品亚洲| 麻豆精品国产自产在线观看一区| 国产成人精品免费视频大全| 国产成人精品久久一区二区三区| 日韩精品无码一区二区三区免费 | 亚洲AV日韩精品久久久久久| 人人妻人人澡人人爽精品欧美| 狠狠精品久久久无码中文字幕| 欧美大片日韩精品| jizz国产精品网站| 精品欧洲av无码一区二区| 日韩国产精品无码一区二区三区| 亚洲精品永久在线观看| 日韩一区二区三区在线精品| 久热这里只有精品99国产6| 欧洲精品码一区二区三区免费看 | 伊人 久久 精品| 日韩精品视频在线观看免费| 欧美精品一区二区在线精品 | 日本伊人精品一区二区三区| 亚洲欧美激情精品一区二区| 亚洲欧美日韩国产精品一区二区| 亚洲精品高清在线| 亚洲精品无码久久久久| 无码精品视频一区二区三区| 无码精品一区二区三区在线| 久久精品国产99久久无毒不卡|