粗见之正则表达式

概念:

正则:也叫做规则,让计算机读懂人类的规则;

正则都是操作字符串的;

写法:

简写:var  re = //

双斜杠会被浏览器默认为注释,所以在里面添加需要操作的元素,例:var  re = /a/

全称写法:var  re = new RegExp(‘a’);

当正则需要传参的时候,一定要用全称的写法:

例参数为obj==>var  re = new RegExp(obj) 

方法:

1.test方法

概念:正则去匹配字符串,如果匹配成功则返回真,匹配失败则返回假

写法:正则.test(字符串)




2.search方法

概念:正则去匹配字符串,如果匹配成功则返回成功的位置,匹配失败则返回-1

写法:字符串.search(正则)




2.match方法

概念:正则去匹配字符串,如果匹配成功则返回成功的数组,匹配失败则返回null

写法:字符串.match(正则);





2.replace方法

概念:正则去匹配字符串,匹配成功的字符替换成新的字符串;

写法:字符串.replace(正则,新的字符串)

第二个参数可以是字符串,也可以是一个回调函数:

字符串.replace(正则,fn( str ){}

函数的第一个参数str,就是匹配成功的字符,是主项,后面的若有参数则依次为第一子项,第二子项...



匹配子项:小括号(),(还有另外一个意思:分组操作)

概念:正则整体为主项,左边第一个小括号里面的正则为第一个子项


在不加全局匹配g的情况下,match除了输出主项,还会把所有的子项输出来

正则中的默认:

1.匹配是区分大小写的; 如果不区分大小写就在正则后面加标识i(不区分大小写)

2.匹配成功就会结束,不会继续匹配; 如果想全部查找,就加标识g(全局匹配)

标识的添加位置:


逻辑符号:

| :正则中的或

字符类:

概念:一组相似的元素  []:中括号的整体代表一个字符,里面的元素是或的关系;

例:var  re = /a[bcd]e/  ==>  re = /abe/  ||  re = /ace/  ||  re = /ade/

排除:^   ^如果写在[]里面的话,代表排除的意思

范围:[a-z]  [0-9]  [a-z0-9]:都只代表一位

开始:^ 在正则的最开始位置,就代表起始的意思

结束:$ 在正则的最后的位置,就代表结束的意思

正则中的量词:

概念:出现的次数;

语法:{n,m}:至少出现n次,最多出现m

{n,}:至少n

{n} :刚好n

*  =  {0,}  :任意次

?  =  {0,1} :零次或者一次

+  =  {1,}  :至少出现一次

例:

没有+’,全局匹配的时候把每一个数字单独的列出来

 ==>    

+’,全局匹配的时候把挨着的单个数字作为一个数字输出来

   ==>  


转义字符:

\n:换行;   \r:制表;   \t:回车;

\s:空格

\S:非空格

\d:数字

\D:非数字

\w:字符   (字母,数字,下划线)

\W:非字符

. :任意字符

\. :真正的点

\b:独立的部分(起始,结束,空格)

\B:非独立的部分

 

\number:重复的子项,number为数字,例\1表示重复的第一个子项;\2表示重复的第二个子项;依次类推

1

var str = abca’;

var re = /(a)(b)(c)\1/ ;  这里的\1就是第一个子项a,也就是说re = /(a)(b)(c)(a)/

re.test(str) ==>true

2

var re = /\w\w/  :这里的两个转义字符可以不一样 ==>           cc 、  c9 、 99

var re = /\w\1/  :这里的\1必须和第一个\w的值一样,== >    cc、  99 、 bb

即:/\w\w/  不一定等于  /\w\1/

 

 

正则末尾跟随字母含义:

g:全局匹配


 i:不区分大小写



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mosowe

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值