正则表达式

来源:互联网 发布:python开源运维 编辑:程序博客网 时间:2024/06/03 12:06

      正则表达式以前也有接触过,只知道它是用来匹配字符串的,具体是什么,该怎么用,却没有深入研究过,现在在Javascript视频的学习中介绍到了,所以介绍的也不是特别细,但是还是挺基础的,所以借此机会研究一下。

      正则表达式就是一个用于描述字符串的对象,不仅可以用来匹配字符串,也可以用来描述字符串,当然了,它的主要作用还是匹配字符串。除Javascript外,众多高级语言(JavaAsp.net等)都是支持正则表达式的。

      说到匹配字符串了,初次接触的人可能不太清楚,为什么要匹配呢?该如何匹配呢?当我们在任何一个网站注册信息时,都可能会遇到提示:输入不合法,其中最多的也就是邮箱格式输入不合法。对此,就是这个正则表达式的匹配。

      关于匹配,其实也就是我们常用的检索了。正则表达式就是通过“*”“?”等通配符来查询字符串,然后进行相应处理的。匹配方法有很多,例如:字符与字符串,字符类,重复类,选择符,定位符,分组,引用,标志等。而正则表达式最大的应用就是校验表单的合法性。在网络中使用比较多的验证为EmailURL,电话号码,身份证等合法性验证。

      以验证Email为例,通常一个Email的格式会为“my@126.com”,因此,可以将一个Email分成3个部分:

  • 用户名部分,该部分通常为英文字母,数字,“_”,“-”和“.”组成,因此可以使用“[\w-_\.]+”来表示。
  • @部分,可以直接使用@表示。
  • 域名部分,可以使用“(\w-]+\.+[\w-]+”来表示。

      因此,验证Email的合法性,可以使用“/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/”来表示。代码清单如下:

      

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>正则表达式</title></head><script language="javascript" type="text/javascript">function checkEmail(){var checkText = form1.textName.value;var reg = /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/;if (reg.test(checkText)){return true;}else{alert("Email格式输入错误,请重新输入!");return false;}}</script><body><form id="form1" name="form1" method="post" action="">  <p>    <input name="textName" type="text" id="textName" /></p>  <p>    <input type="submit" name="Submit" value="提交" />    <input type="button" name="Submit2" value="重置" />  </p></form></body></html>
      怎么样,明白些了吗?

3 0
原创粉丝点击