常用正则表达式 (转)
来自烟海的天空
常用正则表达式
非负整数(正整数 + 0)
[^\\d+$]
正整数
[^[0-9]*[1-9][0-9]*$]
非正整数(负整数 + 0)
[^((-\\d+)|(0+))$]
负整数
[^-[0-9]*[1-9][0-9]*$]
整数
[^-?\\d+$]
非负浮点数(正浮点数 + 0)
[^\\d+(\\.\\d+)?$]
正浮点数
[^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$]
非正浮点数(负浮点数 + 0)
[^((-\\d+(\\.\\d+)?)|(0+(\\.0+)?))$]
负浮点数
[^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$]
浮点数
[^(-?\\d+)(\\.\\d+)?$]
由26个英文字母组成的字符串
[^[A-Za-z]+$]
由26个英文字母的大写组成的字符串
[^[A-Z]+$]
由26个英文字母的小写组成的字符串
[^[a-z]+$]
由数字和26个英文字母组成的字符串
[^[A-Za-z0-9]+$]
由数字、26个英文字母或者下划线组成的字符串
[^\\w+$]
email地址
[^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+$]
url
[^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$]
匹配中文字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
中国电话号码验证
匹配形式如:0511-4405222 或者021-87888822 或者 021-44055520-555 或者 (0511)4405222
正则表达式 "((d{3,4})|d{3,4}-)?d{7,8}(-d{3})*"
中国邮政编码验证
匹配形式如:215421
正则表达式 "d{6}"
电子邮件验证
匹配形式如:justali@justdn.com
正则表达式 "w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*"
身份证验证
匹配形式如:15位或者18位身份证
正则表达式 "d{18}|d{15}"
常用数字验证
正则表达式
"d{n}" n为规定长度
"d{n,m}" n到m的长度范围
非法字符验证
匹配非法字符如:< > & / ' |
正则表达式 [^<>&/|'\]+
日期验证
匹配形式如:20030718,030718
范围:1900--2099
正则表达式((((19){1}|(20){1})d{2})|d{2})[01]{1}d{1}[0-3]{1}d{1}
专用字符包括:+,*,?
+:规定其前导字符必须在目标对象中连续出现一次或多次。
*:规定其前导字符必须在目标对象中出现零次或连续多次。
?:规定其前导对象必须在目标对象中连续出现零次或一次。
{n}匹配确定的 n 次。
{n,}至少匹配 n 次。
{n,m}n <= m,最少匹配 n 次且最多匹配 m 次。
\s:用于匹配单个空格符,包括tab键和换行符;
\S:用于匹配除单个空格符之外的所有字符;
\d:用于匹配从0到9的数字;
\w:用于匹配字母,数字或下划线字符;
\W:用于匹配所有与\w不匹配的字符;
. :用于匹配除换行符之外的所有字符。
较为常用的定位符包括:^, $, \b,\B
^:定位符规定匹配模式必须出现在目标字符串的开头
$:定位符规定匹配模式必须出现在目标对象的结尾
\b:定位符规定匹配模式必须出现在目标字符串的开头或结尾的两个边界之一
\B:定位符则规定匹配对象必须位于目标字符串的开头和结尾两个边界之内,即匹配对象既不能作为目标字符串的开头,也不能作为目标字符串的结尾。
使用座机号码(JS)范例:
(/^\d{3,4}[-]d{7,8}[-]\d{0,1}$/.test(value))