正则表达式

1. 新建

1.1 RegExp 构造函数

var re=new RegExp(‘a’);

1.2 使用字面量(常用)

var re=/a/;

2. 方法

2.1 test()

返回一个布尔值,方法用于匹配字符串,匹配成功返回true,失败返回false

2.2 exec()
2.2.1

返回匹配结果,发现匹配,就返回一个以每个匹配成功的字符串组成的类数组集合,否则返回null

2.2.2

方法属性
index 表示匹配项在字符串中的位置
input 表示原字符串

2.3

正则.方法(字符串)

3. 匹配规则

3.1 字面量字符

含义:在正则表达式中,某个字符只表示它字面的含义,比如/a/ 匹配a
eg: 数字、大小写、符号

3.2 元字符

含义:除字面量字符外,还有一部分字符有特殊含义,不代表字面意思,叫“元字符”。如果要匹配它们本身,需要在他们前面加上反斜杠进行转义,比如匹配加号,就要写成+

3.2.1
正则中需要用斜杠转义的字符:
^.[]、$、()|*+?{}、\\

点字符.
匹配除回车\r、换行\n、行分隔符\u2028、段分隔符\u2029以外的所有字符
位置字符
^表示字符串的开始位置
$表示字符串的结束位置
竖线符号|
在正则中表示“或关系”即a|b表示匹配a或b

3.3 重复类

重复类模式的精确匹配次数,用大括号{}表示,{n}表示恰好重复n次,{n,}表示至少重 复n次,{n,m}表示重复不少于n次,不多于m次

3.4 量词符

?问号表示某个模式出现0次或1次,等同于{0, 1}最 多1次
*星号表示某个模式出现0次或多次,等同于{0,}无影响
+加号表示某个模式出现1次或多次,等同于{1,}至少1次

3.5 字符类

表示有一系列字符可供选择,只要匹配其中一个就可以,所有可供选择的字符都放在方括号内,如: [abc]表示a、b、c之中任选一个匹配

脱字符^
如果方括号内第一个字符是[^],则表示除了字符类中的字符,其他字符都可以匹配,如: [^abc]表示除了a、b、c之外都可以匹配
连字符-
1.对于连续序列的字符,连字符用来提供简写形式,表示字符的连续范围,:
[abc]可写成[a-c][0123456789]可写成[0-9][A-Z]表示26个大写字母
2.中文[\u4e00- \u9fa5]
3.6 修饰符(模式修正符)

修饰符表示模式的附加规则,放在正则模式的最
尾部,修饰符可以单个使用,也可以多个一起使用

g:默认情况下,第- -次匹配成功后,正则对象就停止向下匹配,g修饰符表示全局匹配
i:默认情况下,正则对象区分字母的大小写,加上i修饰符以后表示忽略大小写
m:表示多行模式,会修改^和$的行为默认情况下,^和$匹配字符串的开始处和结尾处,加上m修饰符后,^和$会识别换行符\n
3.7 预定义模式

指某些常见模式的简写方式

\d 匹配0-9之间的任一数字,相当于[0-9]
\D匹配所有0-9以外的字符,相当于[^0- -9]
\w匹配任意的字母、数字和下划线,
  相当于[A-Za-z0-9_]
\W除所有字母数字和下划线以外的字符,
相当于[^A-Za-z0-9_ ]
\s匹配空格,包括制表符、空格符、断行符等
\S匹配非空格的字符
\b匹配单词的后边界
\B匹配非单词边界
3.8 特殊字符

[\b]匹配退格键
\n匹配换行键
\r匹配回车键
\f匹配换页符
\t查找制表符tab

3.9 组匹配

正则表达式的括号表示分组匹配,括号中的模式可以用来匹配分组的内容

4.匹配方法

4.1 match()

接受一个参数,正则去匹配字符串,如果匹配成功,就返回匹配成功的数组,如果匹配不成功,就返回null

4.2 search()

参数与match相同,返回字符串中第一个匹配项的索引,没有匹配项返回-1

4.3 replace()

用于替换,接受两个参数,第-个是匹配项,第二个可以是字符串或是一个函数

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值