javascript中的正则表达式
正则表达式的一些作用:
1、测试字符串的某个模式。例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一个信用卡号码模式。这称为数据有效性验证
2、替换文本。可以在文档中使用一个正则表达式来标识特定文字,然后可以全部将其删除,或者替换为别的文字
3、根据模式匹配从字符串中提取一个子字符串。可以用来在文本或输入字段中查找特定文字
javascript的17种正则表达式:
"^\\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+)?$" //浮点数
"^[A-Za-z]+$" //由26个英文字母组成的字符串
"^[A-Z]+$" //由26个英文字母的大写组成的字符串
"^[a-z]+$" //由26个英文字母的小写组成的字符串
"^[A-Za-z0-9]+$" //由数字和26个英文字母组成的字符串
"^\\w+$" //由数字、26个英文字母或者下划线组成的字符串
"^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+$" //email地址
"^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$" //url
javascript中使用正则表达式进行简单的信息验证的几个小例子:
1、利用JS正则表达式判断是否是0-9的阿拉伯数字
1 function regIsDigit(fData) 2 { 3 var reg = new RegExp("^[0-9]$"); 4 return (reg.test(fData)); 5 }
2、利用JS正则表达式获取字符串的长度
1 function regDataLength(fData) 2 { 3 var valLength = fData.length; 4 var reg = new RegExp("^[\u0391-\uFFE5]$"); 5 var result = 0; 6 for(i=0; i< valLength; i++) 7 { 8 if(reg.test(fData.charAt(i))) 9 { 10 result += 2; 11 } 12 else 13 { 14 result ++; 15 } 16 } 17 return result; 18 }
3、JS判断是否是数值
1 function regIsNumber(fData) 2 { 3 var reg = new RegExp("^[-]?[0-9]+[\.]?[0-9]+$"); 4 return reg.test(fData) 5 }
4、JS验证Email是否正确
1 function regIsNumber(fData) 2 { 3 var reg = new RegExp("^[-]?[0-9]+[\.]?[0-9]+$"); 4 return reg.test(fData) 5 }
5、JS判断手机号是否正确
1 function regIsPhone(fData) 2 { 3 var reg = /^(\+86)?(1[0-9]{10})$/; 4 return reg.test(fData); 5 }
注:以上内容由本人网上简单整理