正则表达式

先看一个用正则表达式校验Email的js方法

 

function validEmail(email){
    var re = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
    return re.test(email);
}

 

以此为例,来分析一下正则表达式的使用方法。

 

    ^表示我们要用这个正则表达式检查以特定字符串开头的字符串。

    \w表示a~z、A~Z、0~9或下划线的任意单一字符。

    +表示前面的条目可以出现一次或多次。

 

    说明:这个示例中,/^\w+ 表示邮件字符串必须以a~z、A~Z、0~9或下划线组成的字符串开头。

 

    ( )表示一个组,这意味着后面将要引用圆括号中的内容,因此将它们放在一个组中。

    [ ]表示可以出现其中的任意一个字符。

    ?表示前面的内容可以出现0次或1次。

    *表示前面的内容可以出现0次或多次。

    $表示字符串在这里结束。

 

    说明:([\.-]?\w+)* 这部分中,方括号内包含 \.- ,表示允许用户输入点号或连字符0次或1次,由于点号在正则表达式中有特殊意义,因此要使用 \ 对其进行转义;点号或连字符后面必须出现a~z、A~Z、0~9或下划线组成的字符串;*表示圆括号中的内容可以出现0次或多次。

    @仅代表其本身,没有任何其他意义。

    (\.\w{2,3}) 这个组中,表示点号后面可以出现a~z、A~Z、0~9或下划线中的字符2次到3次。

    $表示字符串必须以前面这个组(\.\w{2,3}) 的内容结束,如.com、.cn、.com.cn等。

 

 

    通过上面的例子,正则表达式的基本用法就已经掌握了,下面把正则表达式中的特殊字符列出,以便查阅:

 

正则表达式的特殊字符

——————————————————————————————————————————————————————

字符                                                      匹配

——————————————————————————————————————————————————————

\                        在字面意义和特殊意义之间进行切换

^                       字符串的开头

$                        字符串的结尾

*                        零次或多次

+                        一次或多次

?                        零次或一次

.                         除换行符以外的任意字符

\b                      单词边界

\B                      非单词边界

\d                      0~9的任何数字(与[0-9]相同)

\D                      任何非数字

\f                       换页符

\n                      换行符

\r                       回车符

\s                      任何单一空白字符(与[ \f\n\r\t\v]相同)

\S                      任何单一非空白字符

\t                       制表符

\v                      垂直制表符

\w                     任何字母、数字及下划线(与[a-zA-Z0-9_]相同)

\W                     出字母、数字和下划线外的其他字符

\xnn                  十六进制数字nn定义的ASCII字符

\onn                  八进制数字nn定义的ASCII字符

\cX                    控制字符X

[abcde]            与其中任何字符匹配的字符集

[^abcde]          与其中任何字符都不匹配的字符集

[a-e]                 与其中字符范围匹配的字符集

[\b]                   退格字符的字面意义(不同于\b)

{n}                   前面的字符正好出现n次

{n,}                  前面的字符至少出现n次

{n,m}               前面的字符出现n次到m次

()                      一个组,后面可以引用它

x|y                    x或y

——————————————————————————————————————————————————————

 

正则表达式修饰符

——————————————————————————————————————————————————————

修饰符                                                含义

——————————————————————————————————————————————————————

g             搜索所有的匹配(全局),不只是第一处匹配

i              进行不区分大小写的搜索

——————————————————————————————————————————————————————

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值