Heim  >  Artikel  >  Backend-Entwicklung  >  PHP常见正则表达式总结

PHP常见正则表达式总结

WBOY
WBOYOriginal
2016-06-20 13:03:441100Durchsuche

正则表达式这东西,学起来还算是有点难度,关键是要不断的在实战中去使用,个把月不用,基本上就快生疏了。作者可是有这个惨痛经历的,所以对于这个东西,还是靠积累!尽量多积累一些比较常用的正则表达式,用的时候直接拿来使用。

web开发中比较常用的也就那么几个。

下面作者将工作中常用的一些正则表达式做一个总结。

网址(URL)

[a-zA-z]+://[^\s]*

IP地址

(IP Address)((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)

电子邮件

(Email)\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

QQ号码

[1-9]\d{4,}

HTML标记(包含内容或自闭合)

.*|

密码(由数字/大写字母/小写字母/标点符号组成,四种都必有,8位以上)

(?=^.{8,}$)(?=.*\d)(?=.*\W+)(?=.*[A-Z])(?=.*[a-z])(?!.*\n).*$

日期(年-月-日)

(\d{4}|\d{2})-((0?([1-9]))|(1[1|2]))-((0?[1-9])|([12]([1-9]))|(3[0|1]))

日期(月/日/年)

((0?[1-9]{1})|(1[1|2]))/(0?[1-9]|([12][1-9])|(3[0|1]))/(\d{4}|\d{2})

时间(小时:分钟, 24小时制)

((1|0?)[0-9]|2[0-3]):([0-5][0-9])汉字(字符)[\u4e00-\u9fa5]

中文及全角标点符号(字符)

[\u3000-\u301e\ufe10-\ufe19\ufe30-\ufe44\ufe50-\ufe6b\uff01-\uffee]

中国大陆固定电话号码

(\d{4}-|\d{3}-)?(\d{8}|\d{7})

中国大陆手机号码

1\d{10}

中国大陆邮政编码

[1-9]\d{5}

中国大陆身份证号(15位或18位)

\d{15}(\d\d[0-9xX])?

非负整数(正整数或零)

\d+

正整数

[0-9]*[1-9][0-9]*

负整数

-[0-9]*[1-9][0-9]*

整数

-?\d+小数(-?\d+)(\.\d+)?

以上正则表达式经过多次测试,靠谱度还是挺高的,大家可以放心使用。但因为不同程序或工具的正则表达式略有区别,大家可以根据自己的情况适当的修改。


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn