JavaScript正则表达式

JavaScript正则表达式在很多方面都有广泛的应用,在jquery源码中,更是大量的用到了正则表达式,我整理了比较实用的正则表达式理论及用法,以便使用时查阅。

1、格式:var expression=/pattern/flags
     pattern是任意简单或者复杂的正则表达式,flags有3个取值:g i m 
     g:global :应用于所有字符串,而不是匹配到第一个就中止
     i:case-insensible:大小写不敏感
     m:muliple:多行匹配
    需要转义的元字符:{[]}() + . * ? \ ^ 
^ 匹配一个输入或一行的开头,/^a/匹配"an A",而不匹配"An a" 
$ 匹配一个输入或一行的结尾,/a$/匹配"An a",而不匹配"an A" 
* 匹配前面元字符0次或多次,/ba*/将匹配b,ba,baa,baaa 
+ 匹配前面元字符1次或多次,/ba*/将匹配ba,baa,baaa 
? 匹配前面元字符0次或1次,/ba?/将匹配b,ba 
(x) 匹配x保存x在名为$1...$9的变量中 
{n} 精确匹配n次 
{n,} 匹配n次以上 
{n,m} 匹配n-m次 
[xyz] 字符集(character set),匹配这个集合中的任一一个字符(或元字符) 
[^xyz] 不匹配这个集合中的任何一个字符 
[\b] 匹配一个退格符 
\b 匹配一个单词的边界 
\B 匹配一个单词的非边界 
\cX 这儿,X是一个控制符,/\cM/匹配Ctrl-M 
\d 匹配一个字数字符,/\d/ = /[0-9]/ 
\D 匹配一个非字数字符,/\D/ = /[^0-9]/ 
\n 匹配一个换行符 
\r 匹配一个回车符 
\s 匹配一个空白字符,包括\n,\r,\f,\t,\v等 
\S 匹配一个非空白字符,等于/[^\n\f\r\t\v]/ 
\t 匹配一个制表符 
\v 匹配一个重直制表符 
\w 匹配一个可以组成单词的字符(alphanumeric,这是我的意译,含数字),包括下划线,如[\w]匹配"$5.98"中的5,等于[a-zA-Z0-9] 
\W 匹配一个不可以组成单词的字符,如[\W]匹配"$5.98"中的$,等于[^a-zA-Z0-9]。
[...] 位于括号之内的任意字符 
[^...] 不在括号之中的任意字符 
. 除了换行符之外的任意字符,等价于[^\n] 
\w 任何单字字符, 等价于[a-zA-Z0-9] 
\W 任何非单字字符,等价于[^a-zA-Z0-9] 
\s 任何空白符,等价于[\ t \ n \ r \ f \ v] 
\S 任何非空白符,等价于[^\ t \ n \ r \ f \ v] 
\d 任何数字,等价于[0-9] 
\D 除了数字之外的任何字符,等价于[^0-9] 
[\b] 一个退格直接量(特例) 



另外还有一个教你看懂复杂的正则表达式教程,挺不错的,在上面的问题解决不了的情况下,可以看看。

这个是w3school的正则表达式教程


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值