正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。 — 菜鸟教程
中文字符
[\u4e00-\u9fa5] PS:unicode编码
双字节字符(包括汉字在内)
[^\x00-\xff]
空白行
\n\s*\r
Email地址
[\w!#$%&’+/=?^_`{|}~-]+(?:.[\w!#$%&’+/=?^_`{|}~-]+)@(?:[\w](?:[\w-][\w])?.)+[\w](?:[\w-]*[\w])?
网址URL
[a-zA-z]+://[^\s]*
国内电话号码
\d{3}-\d{8}|\d{4}-{7,8}
腾讯QQ号
[1-9][0-9]{4,}
中国邮政编码
[1-9]\d{5}(?!\d)
18位身份证号
^(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})([0-9]|X)$
(年-月-日)格式日期
([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8])))
正整数
^[1-9]\d*$
负整数
^-[1-9]\d*$
整数
^-?[1-9]\d*$
非负整数(正整数 + 0)
^[1-9]\d*|0$
非正整数(负整数 + 0)
^-[1-9]\d*|0$
正浮点数
^[1-9]\d.\d|0.\d[1-9]\d$
负浮点数
^-[1-9]\d.\d|-0.\d[1-9]\d$
在线正则表达式测试地址:http://tool.oschina.net/regex/#