正则表达式-通俗易懂篇

什么是正则表达式

正则表达式由字符类 元字符 和量词组成,通常用来帮程序猿按照一定的规则来筛选数据。

字符类

把字符放到[]中就形成了字符类,可以匹配到字符类中包含的所有字符,比如[abc],就会匹配有没有包含abc中的一个 abc这个字符类只占1位,另外[^]是取反,也就是匹配不包含字符类的字符串

常用元字符

. 匹配的是任意字符,除了换行符和终止符以外的字符
\w 相当于[a-zA-Z0-9]
\W 相当于[^a-zA-Z0-9]
\d 相当于[0-9]
\D 相当于[^0-9]
\s 任意的空白符
\S 除了空白符

量词

{n} 表示重复的次数
{n,m} 表示最少出现n次,最多m次
{n,} 表示最少出现n次
? 表示出现0次或者1次{0,1} 正则默认贪婪模式(趋向最大长度匹配,一直匹配到无法匹配位置,非贪婪是匹配到结果就好,最少的匹配长度。),在量词后追加 ?号就是费贪婪模式
* 表示最少出现0次{0,}
+ 表示最少出现1次{1,}
/^…$/ 以什么什么开始到什么什么结束
| 候选 相当于 或

修饰符

g 全局匹配
i 忽略大小写

正则表达式的定义和方法

定义

1.直接通过字面量
var reg= /正则/修饰符
2.通过new RegExp
var reg=new RegExp(“正则”,“修饰符”) 修饰符可以不写
不同点:字面量的方法不能接受变量

方法

1.test()
正则表达式.test(字符串)
返回的值是布尔值 满足true 不满足false
2.exec()
正则表达式.exec(字符串)
返回的值 能匹配到返回数组 否则返回Null
3.replace(正则,替换的内容)

分组

正则里的()是用来分组的
取分组中的内容:
使用RegExp.$1 1指的是分组的序号

需要的条件:
1.正则中需要有分组
2.运行一下正则
3.使用RegExp.$1 去取分组中的内容

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值