现在的位置: 首页 > 综合 > 正文

正则表达式的应用实例通俗说明

2018年04月27日 ⁄ 综合 ⁄ 共 1875字 ⁄ 字号 评论关闭

//校验是否全由数字组成

/^[0-9]{1,20}$/

 

^ 表示打头的字符要匹配紧跟^后面的规则

$ 表示打头的字符要匹配紧靠$前面的规则

[ ] 中的内容是可选字符集

[0-9] 表示要求字符范围在0-9之间

{1,20}表示数字字符串长度合法为120,即为[0-9]中的字符出现次数的范围是120次。

 

/^ $/成对使用应该是表示要求整个字符串完全匹配定义的规则,而不是只匹配字符串中的一个子串。

 

*******************************************************************************

//校验登录名:只能输入5-20个以字母开头、可带数字、“_”、“.”的字串

/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/

 

^[a-zA-Z]{1} 表示第一个字符要求是字母。

([a-zA-Z0-9]|[._]){4,19} 表示从第二位开始(因为它紧跟在上个表达式后面)的一个长度为49位的字符串,它要求是由大小写字母、数字或者特殊字符集[._]组成。

 

*******************************************************************************

//校验用户姓名:只能输入1-30个以字母开头的字串

/^[a-zA-Z]{1,30}$/

 

*******************************************************************************

//校验密码:只能输入6-20个字母、数字、下划线

/^(/w){6,20}$/

 

/w:用于匹配字母,数字或下划线字符

 

*******************************************************************************

//校验普通电话、传真号码:可以“+”或数字开头,可含有“-

/^[+]{0,1}(/d){1,3}[ ]?([-]?((/d)|[ ]){1,12})+$/

 

/d:用于匹配从09的数字;

“?”元字符规定其前导对象必须在目标对象中连续出现零次或一次

 

可以匹配的字符串如:+123 -999 999  +123-999 999  123 999 999 +123 999999

 

 

 

 

 

 

*******************************************************************************

//校验URL

/^http[s]{0,1}:////.+$/ /^http[s]{0,1}:////.{1,n}$/ (表示url串的长度为length(“https://”) + n )

 

/ / :表示字符“/”。

. 表示所有字符的集

+ 等同于{1,},就是1到正无穷吧。

 

*******************************************************************************

//校验纯中文字符

/^[/u4E00-/u9FA5]+$/

 

[/u4E00-/u9FA5] :估计是中文字符集的范围吧

 

以上表达式均在下面的javascript中测试通过

 

<html>

<script language="JavaScript">

<!--

function regx(r,s)

{

       if (r == null || r == ""){

              return false;

       }

       var patrn= new RegExp(r);

       if (patrn.exec(s))

              return true

       return false

}

 

-->

</script>

<body>

<form>

       规则表达式 <input type="input" name="regxStr" value="" > (填写/ /之间的表达式)

<br>

       校验字符串 <input type="input" name="str" value="" >

 

       <input type="button" name="match" value="匹配" onClick="alert(regx(regxStr.value,str.value));">

</form>

</body>

</html>

抱歉!评论已关闭.