在js中使用的正则的语法和方法

正则是什么

正则表达式(RegExp),查找符合某些符合规则的字符串

正则的创建

第一种构造函数创建:let reg=new RegExp(‘匹配模式’,‘匹配特征’);
示例:let reg=new RegExp(‘a’,‘i’) 这个正则就是用来查找字符串中是否包含了字符串’a’,并且忽略大小写
第二种字面量式创建:let reg =/匹配模式/匹配特征;
let reg =/a/i;这个正则也是用来查找字符串中是否包含了字符串’a’,并且忽略大小写

注意:关于匹配特征,如果没有就可以省略
匹配特征主要有两个i和g.
i表示查找时,忽略大小写,g表示的是全局的意思.

正则的组成部分

正则由元字符,量词和特殊符号三部分组成.
详解这三个部分.
元字符:
\d表示任意数字 \D表示任意非数字
\w表示任意字母数字下划线 \W表示任意非字母数字下划线
\s表示任意空白字符 \S表示任意非空白字符
. 表示任意非换行字符
量词:
{n} 匹配前一项n次
{n,}匹配前一项至少n次
{n,m}匹配前一项至少n次,至多m次
*没有次数限制
?至多一次
+至少一次
特殊符号:
^匹配字符串的开始
$匹配字符串的结束
[ ]可匹配的列表
( )分组
| 或者
[^ ]匹配列表取非
示例:

let reg1=/^\w{10,20}$/;
//这个正则表示要匹配的对象只有10-20个,可以是任意字母数字下划线的字符
let reg2=/^[0-9a-zA-Z]{6,18}$/;
//这个正则表示要匹配的对象只有6-18个,可以是任意字母数字的字符
let reg3=/^[0-9a-zA-Z]+@[0-9a-zA-Z]+\.[a-z]{2,4}$/
//这个正则表示邮箱的匹配,+表示至少一个,加号之前表示字符,[0-9a-zA-Z]+表示的是至少一个长度的字母数字组成字符串,后的@就表示目标字符串也在这个地方有个@,\.[a-z]{2,4},正则中.表示的任意非换行字符,但是我要的是目标中就有个点,需要用\进行转义,最后这个部分就是有2-4个小写字母组成.
let reg4=/^[ABC]$/;
//这个就是目标字符就是A或者B或者C

正则的方法

test()检测括号内的字符串是否符合要求,返回的是布尔值
exec()检测括号内的字符串是否有符合要求的项目,有的话返回的是符合正则标准的值组成的数组,没有的话返回的是null

//用上面创建的正则
reg4.test('A')  返回的是true
reg4.test('D')  返回的是false
reg4.exec('A')  返回的是['A']

字符串的正则方法

str.replace(/[A-Z]/g, item => '_'+item.toLowerCase())

将字符串中的所有大写字母转成下横加小写字母

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值