我不是當談到正則表達式完全是一個職業,我必須通過這個正則表達式的東西運行PHP腳本:
^[\d\D]{1,}$
是什麼應該要做,它似乎匹配一切?
我不是當談到正則表達式完全是一個職業,我必須通過這個正則表達式的東西運行PHP腳本:
^[\d\D]{1,}$
是什麼應該要做,它似乎匹配一切?
總之所有該正則表達式是做是這樣的:
^.+$
這意味着匹配1或更大的長度的任何字符(數字或非數字)。
\d
匹配任何數字\D
匹配任何非數字。[\d\D]
匹配所有數字和非數字。{1,}
要求在[]
的比賽中重複至少1次(沒有上限)。所以它匹配所有至少有1個字符的內容。
你說得對。實際上至少有一個字符長。但是以一種過於複雜和毫無意義的方式。 [\d\D]
相當於.
和{1,}
相當於+
^[\d\D]{1,}$
將匹配其含有一個或多個{1,}
任何數字\d
或非數字字符\D
包括換行符的字符串。
相比之下,^.+$
將匹配包含一個或多個任何字符,除了換行符的字符串。如果單行修飾符被添加到正則表達式中,即/^.+$/s
那麼.
也將匹配包括換行符的任何字符。
[\d\D]
相當於在單線模式下使用.
,雖然更常見的[\s\S]
用於相同的結果。
+
相當於{1,}
。
正則表達式將匹配包含至少一個任何類型字符的整個任何字符串。