理解+上手正则表达式【附官方常用正则表达式】

45 篇文章 0 订阅
38 篇文章 3 订阅

啥是正则

正则可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。
对应string.test()、string.replace()、string.match()方法
组成:/ 表达式 /修饰符

修饰符

是用在整个正则的后面的 eg: /…/i 、/…/gi 相当于全局配置吧。不设置就是只找一次,区分大小
在这里插入图片描述

匹配规则/模式

我理解为查找规则,按某个规则来找比如:\d 只查找数字
每个子表达式只能下面10选一
在这里插入图片描述
在这里插入图片描述

特殊字符用法介绍

1.”^”可以表示否(取反),也可以表示匹配字符是不是作为开始
前者在[ ]里面是表示否,其他时候是表示作为开始
在这里插入图片描述在这里插入图片描述

2.$是匹配结尾,和^用法差不多
在这里插入图片描述

3.*号,匹配前面表达式0次或多次
在这里插入图片描述

因为0次所以有空字符
如果是runboo* : 匹配runbo+0次或多次0
如果是(runboo)* :匹配0或多次runboo
如果是(runoo)*b :匹配0或多次runboo+b
在这里插入图片描述

4.+号,匹配1次或多次
区别最主要是0次时候多出来的空字符串【所以+号会更实用】
在这里插入图片描述

5.?号,匹配0次或1次
比如ui? 正则会找u、ui。
如果ui* 会找u、ui、uii、uiiiiii…
如果ui+ 会找ui、uii、uiiiiii…
如果ui 只找ui

6.string{n}
x{n} 表示匹配x多少次
x{n,} 至少匹配n次,
{n,m} 最少n次最多m次
在这里插入图片描述

7…号,匹配出\n之外的单字符
例子: 长度为3-20的所有字符:^.{3,20}$

官方常用正则表达式

看多了遮住自己写一遍就会了

一、校验数字的表达式

在这里插入图片描述

二、校验字符的表达式

汉字:^[\u4e00-\u9fa5]{0,}$英文和数字:^[A-Za-z0-9]+$ 或 ^[A-Za-z0-9]{4,40}$长度为3-20的所有字符:^.{3,20}$由26个英文字母组成的字符串:^[A-Za-z]+$由26个大写英文字母组成的字符串:^[A-Z]+$由26个小写英文字母组成的字符串:^[a-z]+$由数字和26个英文字母组成的字符串:^[A-Za-z0-9]+$由数字、26个英文字母或者下划线组成的字符串:^\w+$ 或 ^\w{3,20}$中文、英文、数字包括下划线:^[\u4E00-\u9FA5A-Za-z0-9_]+$中文、英文、数字但不包括下划线等符号:^[\u4E00-\u9FA5A-Za-z0-9]+$ 或 ^[\u4E00-\u9FA5A-Za-z0-9]{2,20}$可以输入含有^%&',;=?\x22]+禁止输入含有的字符:[^\x22]+

三、特殊需求表达式

在这里插入图片描述
官方地址

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值