2013-03-29 65 views
1

我不是當談到正則表達式完全是一個職業,我必須通過這個正則表達式的東西運行PHP腳本:

^[\d\D]{1,}$ 

是什麼應該要做,它似乎匹配一切?

回答

1

總之所有該正則表達式是做是這樣的:

^.+$ 

這意味着匹配1或更大的長度的任何字符(數字或非數字)。

1
  • \d匹配任何數字
  • \D匹配任何非數字。
  • [\d\D]匹配所有數字和非數字。
  • {1,}要求在[]的比賽中重複至少1次(沒有上限)。

所以它匹配所有至少有1個字符的內容。

參考:http://www.regular-expressions.info/reference.html

0

你說得對。實際上至少有一個字符長。但是以一種過於複雜和毫無意義的方式。 [\d\D]相當於.{1,}相當於+

1

^[\d\D]{1,}$將匹配其含有一個或多個{1,}任何數字\d或非數字字符\D包括換行符的字符串。

相比之下,^.+$將匹配包含一個或多個任何字符,除了換行符的字符串。如果單行修飾符被添加到正則表達式中,即/^.+$/s那麼.也將匹配包括換行符的任何字符。

[\d\D]相當於在單線模式下使用.,雖然更常見的[\s\S]用於相同的結果。

+相當於{1,}

正則表達式將匹配包含至少一個任何類型字符的整個任何字符串。

相關問題