常⽤正则表达式范例
常⽤正则表达式举例
整数或者⼩数:^\d+\.?\d{0,2}$
只能输⼊数字:"^[0-9]*$"。
只能输⼊n位的数字:"^\d{n}$"。
只能输⼊⾄少n位的数字:"^\d{n,}$"。
只能输⼊m~n位的数字:。"^\d{m,n}$"
只能输⼊零和⾮零开头的数字:"^(0|[1-9][0-9]*)$"。
只能输⼊有两位⼩数的正实数:"^[0-9]+(.[0-9]{2})?$"。
只能输⼊有1~3位⼩数的正实数:"^[0-9]+(.[0-9]{1,3})?$"。
只能输⼊⾮零的正整数:"^\+?[1-9][0-9]*$"。
只能输⼊⾮零的负整数:"^\-[1-9][]0-9"*$。
只能输⼊长度为3的字符:"^.{3}$"。
只能输⼊由26个英⽂字母组成的字符串:"^[A-Za-z]+$"。
只能输⼊由26个⼤写英⽂字母组成的字符串:"^[A-Z]+$"。
只能输⼊由26个⼩写英⽂字母组成的字符串:"^[a-z]+$"。
只能输⼊由数字和26个英⽂字母组成的字符串:"^[A-Za-z0-9]+$"。
只能输⼊由数字、26个英⽂字母或者下划线组成的字符串:"^\w+$"。
验证⽤户密码:"^[a-zA-Z]\w{5,17}$"正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。
验证是否含有^%&',;=?$\"等字符:"[^%&',;=?$\x22]+"。
只能输⼊汉字:"^[\u4e00-\u9fa5]{0,}$"
验证Email地址:"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"。
验证InternetURL:"^([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$"。
验证电话号码:"^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$"正确格式为:"XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXX 验证⾝份证号(15位或18位数字):"^\d{15}|\d{18}$"。
验证⼀年的12个⽉:"^(0?[1-9]|1[0-2])$"正确格式为:"01"~"09"和"1"~"12"。
验证⼀个⽉的31天:"^((0?[1-9])|((1|2)[0-9])|30|31)$"正确格式为;"01"~"09"和"1"~"31"。匹配中⽂字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
<script type="text/javascript">
//应⽤:计算字符串的长度(⼀个双字节字符长度计2,ASCII字符计1)
String.prototype.len=function(){
place(/[^\x00-\xff]/g,"aa").length;//aa两个英⽂字符;原理就是替换为英⽂字符,返回其长度;
}
</script>
匹配空⾏的正则表达式:\n[\s| ]*\r
匹配html标签的正则表达式:<(.*)>(.*)<\/\1>|<(.*)\/>
匹配⾸尾空格的正则表达式:(^\s*)|(\s*$)
<script type="text/javascript">
//javascript中没有像vbscript那样的trim函数,我们就可以利⽤这个表达式来实现,如下:
im = function(){
place(/(^\s*)|(\s*$)/g, "");
}
</script>
匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
匹配⽹址URL的正则表达式:([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?
匹配中⽂字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
匹配空⽩⾏的正则表达式:\n\s*\r
匹配⾸尾空⽩字符的正则表达式:^\s*|\s*$
↑↑可以⽤来删除⾏⾸⾏尾的空⽩字符(包括空格、制表符、换页符等等),⾮常有⽤的表达式
匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
↑↑表单验证时很实⽤
匹配⽹址URL的正则表达式:[a-zA-z]+://[^\s]*
↑↑⽹上流传的版本功能很有限,上⾯这个基本可以满⾜需求
匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$↑↑表单验证时很实⽤
匹配国内电话号码:\d{3}-\d{8}|\d{4}-\d{7}
regex匹配↑↑匹配形式如 0511-******* 或 021-********
匹配腾讯QQ号:[1-9][0-9]{4,}
↑↑腾讯QQ号从10000开始
匹配中国:[1-9]\d{5}(?!\d)
↑↑中国为6位数字
匹配⾝份证:\d{15}|\d{18}
↑↑中国的⾝份证为15位或18位
匹配ip地址:\d+\.\d+\.\d+\.\d+
↑↑提取ip地址时有⽤
匹配特定数字:
^[1-9]\d*$  //匹配正整数
^-[1-9]\d*$  //匹配负整数
^-?[1-9]\d*$  //匹配整数
^[1-9]\d*|0$  //匹配⾮负整数(正整数 + 0)
^-[1-9]\d*|0$  //匹配⾮正整数(负整数 + 0)
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$  //匹配正浮点数
^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$  //匹配负浮点数
^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$  //匹配浮点数
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$  //匹配⾮负浮点数(正浮点数 + 0)
^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$  //匹配⾮正浮点数(负浮点数 + 0)↑↑处理⼤量数据时有⽤,具体应⽤时注意修正
匹配特定字符串:
^[A-Za-z]+$  //匹配由26个英⽂字母组成的字符串
^[A-Z]+$  //匹配由26个英⽂字母的⼤写组成的字符串
^[a-z]+$  //匹配由26个英⽂字母的⼩写组成的字符串
^[A-Za-z0-9]+$  //匹配由数字和26个英⽂字母组成的字符串
^\w+$  //匹配由数字、26个英⽂字母或者下划线组成的字符串
↑↑最基本也是最常⽤的⼀些表达式
整理出来的⼀些常⽤的正则表达式所属分类: JScript  (三)
Email : /^\w+([-+.]\w+)*@\w+([-.]\\w+)*\.\w+([-.]\w+)*$/
isEmail1 : /^\w+([\.\-]\w+)*\@\w+([\.\-]\w+)*\.\w+$/;
isEmail2 : /^.*@[^_]*$/;
Phone : /^((\(\d{3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}$/
Mobile : /^((\(\d{3}\))|(\d{3}\-))?13\d{9}$/
Url : /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/ IdCard : /^\d{15}(\d{2}[A-Za-z0-9])?$/
Currency : /^\d+(\.\d+)?$/
Number : /^\d+$/
Code : /^[1-9]\d{5}$/
QQ : /^[1-9]\d{4,8}$/
Integer : /^[-\+]?\d+$/
Double : /^[-\+]?\d+(\.\d+)?$/
English : /^[A-Za-z]+$/
Chinese : /^[\u0391-\uFFE5]+$/
UnSafe : /^(([A-Z]*|[a-z]*|\d*|[-_\~!@#\$%\^&\*\.\(\)\[\]\{\}<>\?\\\/\'\"]*)|.{0,5})$|\s/ PassWord :^[\\w]{6,12}$
ZipCode : ^[\\d]{6}
/^(\+\d+ )?(\(\d+\) )?[\d ]+$/; //这个是国际通⽤的电话号码判断
/^(1[0-2]\d|\d{1,2})$/; //这个是年龄的判断
/^\d+\.\d{2}$/;  //这个是判断输⼊的是否为货币值
匹配空⾏的正则表达式:\n[\s| ]*\r
匹配HTML标记的正则表达式:/<(.*)>.*<\/\1>|<(.*) \/>/
匹配⾸尾空格的正则表达式:(^\s*)|(\s*$)
匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
匹配⽹址URL的正则表达式:([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?
^\d+$  //匹配⾮负整数(正整数 + 0)
^[0-9]*[1-9][0-9]*$  //匹配正整数
^((-\d+)|(0+))$  //匹配⾮正整数(负整数 + 0)
^-[0-9]*[1-9][0-9]*$  //匹配负整数
^-?\d+$    //匹配整数
^\d+(\.\d+)?$  //匹配⾮负浮点数(正浮点数 + 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+)?)|(0+(\.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+)?$

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。