当谈到正则表达式时,我不是一个专业人士,而且我有一个PHP脚本可以运行这个正则表达式:
^[\d\D]{1,}$
这应该做什么,似乎它匹配一切?
答案 0 :(得分:1)
\d
匹配任何数字\D
匹配任何非数字。 [\d\D]
匹配所有数字和非数字。 {1,}
要求[]
中的匹配至少重复一次(没有上限)。因此它匹配至少包含1个字符的所有内容。
答案 1 :(得分:1)
总之,正则表达式所做的就是:
^.+$
这意味着匹配任何长度为1或更长的字符(数字或非数字)。
答案 2 :(得分:1)
^[\d\D]{1,}$
将匹配包含一个或多个{1,}
任意数字\d
或非数字\D
字符的字符串,包括换行符
相反,^.+$
将匹配包含除换行符之外的任何字符中的一个或多个的字符串。如果将单行修饰符添加到正则表达式,即/^.+$/s
,那么.
也会匹配任何字符,包括换行符。
[\d\D]
相当于在单线模式下使用.
,但更常见的是[\s\S]
使用相同的结果。
+
相当于{1,}
。
正则表达式将匹配包含至少一个任何类型字符的任何字符串。
答案 3 :(得分:0)
你是对的。事实上,任何至少一个字符长的东西。但是以一种过于复杂和毫无意义的方式。 [\d\D]
相当于.
,{1,}
相当于+