正则表达式-基础文档

先看micro-app里面的正则

/^[\s\S]+{/ 
/^((html[\s>~,]+body)|(html|body|:root))/ 

1.定义

是用来描述字符串内容格式,使用它通常用于匹配一个字符串的内容是否符合格式要求。

2.字符串的正则方法

  • split:根据匹配字符串切割父字符串
  • match:使用正则表达式与字符串相比较,返回一个包含匹配结果的数组
  • search:使用正则表达式或指定字符串进行搜索,返回第一个出现的匹配项的下角标
  • replace:使用正则表达式和字符串比较,然后用新的子串来替换被匹配的子串

3.正则表达式方法

  • exec:在目标字符串中执行一次正则匹配操作

    在全局模式下,当 exec() 找到了与表达式相匹配的文本时,在匹配后,它将把正则表达式对象的 lastIndex 属性设置为匹配文本的最后一个字符的下一个位置。这就是说,您可以通过反复调用 exec() 方法来遍历字符串中的所有匹配文本。当 exec() 再也找不到匹配的文本时,它将返回 null,并把 lastIndex 属性重置为 0。
  • test:测试当前正则是否能匹配目标字符串

4.[] 字符集

简单类:就是任意多个字符进行集合书写,多个字符连续书写。

比如:[abc]

范围类:有时匹配的东西过多,而且类型又相同,全部输入太麻烦,我们可以在中间加了个横线。

比如:[0-9] [A-Z] [a-z]

组合类:允许用中括号匹配不同类型的单个字符,或者是一类及多类,或者一些单一的符号。

比如:[0-9a-z]

5.修饰符 g i

g 修饰符用于执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。

i 修饰符用于执行对大小写不敏感的匹配。

6.边界符 ^ $

^ 开头 表示字符串必须以^后面的内容作为开头。

$ 结尾 表示$前面匹配的结果必须位于字符串最后

7.预定义类 \d \D \s \S \w \W

\d [0-9] \d可以匹配一个任意的数字字符

\D [^0-9] \D 匹配任意一个不是数字的字符

\s 可以匹配任意的空白。

\S 可以匹配任意的不是空白的字符。

\w 可以匹配任意的字母、数字或下划线。

\W 可以匹配任意的字母、数字、下划线以外的内容。

量词

如果需要将正则的某个符号连续匹配多次,可以使用量词对符号进行修饰。量词的写法:{},内部书写对应的数字,表示量词是多少。

软硬出现次数
{n}硬性量词对应零次或者n次
{n,m}软性量词至少出现n次但不超过m次(中间不能有空格)
{n,}软性量词至少出现n次
?软性量词出现零次或一次
*软性量词出现零次或多次(任意次)
+软性量词出现一次或多次(至少一次)

中文匹配

固定字符集写法:[\u4e00-\u9fa5]

可以匹配一个任意的中文汉字。

分组

正则中使用()表示分组,内部的内容会作为一个整体进行操作。

后期如果小括号后面有量词,表示小括号内部整体重复匹配多少次。

/(byebye){2}/.test(“byebye”) true

正则表达式不包含某些字符

^: 以·····开头的字符串

$:以·····结尾的字符串

如:

只包含数字字母: [0-9a-zA-Z]

以数字开头: ^[0-9]

以字母结尾:[a-zA-Z]$

而不包含数字字母:

[^0-9a-zA-A] :那个开始符是写在中括号里面 的!!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值