⬆ ⬆ ⬆ ⬆

资源失效修复

当前位置:首页>技术教程> 正则表达式速记
随机语录:
正则表达式速记
19°
  • 发布时间
  • 最后更新于
    2024-07-13 21:21:08
  • 文章分类
  • 下载量
    0次【1月内】
  • 下载要求
    积分下载
  • 文章来源
当前位置:首页>技术教程> 正则表达式速记

正则表达式速记

基本字符匹配(Basic)

表达式说明
.匹配除了换行符之外的任意单个字符。
[ ]匹配方括号内的任意⼀个字符。例如, [abc] 会匹配"a", "b", 或 "c"。可以使用 - 表示范围,例如, [a-z] 就表示所有小写字母。
[^ ]匹配不在方括号中的任意字符。例如, [^abc]表示非"a", "b", "c"的任意字符。
|逻辑或操作。例如, cat|dog匹配"cat"或"dog"。  

字符类(Character Class)

表达式说明
\d匹配任意数字,等价于 [0-9] 。
\D匹配任意非数字字符,等价于 [^0-9] 
\w匹配任意字母数字字符及下划线,等价于 [a-zA-Z0-9_] 。
\W匹配任意非字母数字字符,等价于 [^a-zA-Z0-9_] 
\s匹配任意空白字符(空格、 Tab、换行符等)。
\S匹配任意非空白字符。

量词(Quantifiers)

表达式说明
*匹配0次或者多次前面的元素。
+匹配1次或者多次前面的元素。
?匹配0次或者1次前面的元素。
{n}确切匹配n次前面的元素。
{n,}匹配n次或更多次前面的元素。
{n,m}匹配n次到m次前面的元素。

定位符(Anchors)

表达式说明
^匹配每行的开头。例如: ^Hello 匹配以Hello开始的行。
$匹配每行的结尾。例如: World$ 匹配以World结尾的行。
\b匹配一个单词的边界。例如, \bin\b 就会精确确匹配单词in, 而不会匹配单词find中的in。
\B匹配非单词边界,与\b相反。

贪婪(Greedy)和懒惰(Lazy)

表达式说明
ab{3,}默认贪婪匹配,只要后面的字符依然满足条件,就会继续匹配。abbb、 abbbb、 abbbbb、 abbbbbb都满足要求。
ab{3,}?在量词后面加上问号就表示非贪婪匹配,即懒惰匹配,满足条件之后,即使后面依然符合条件也不会再继续匹配了。只有abbb满足要求,abbbb、 abbbbb、 abbbbbb就只有前面的部分满足要求。

旗标(Flags)

表达式说明
icase insensitive ,表示忽略大小写。
mmulti-line,多行模式  
s允许 . 匹配包括换行符在内的所有字符。
gglobal,全局搜索,匹配文本中的所有实例。

分组和引用(Groups)

表达式说明
(abc)捕获分组。可以将多个字符当做一个整体来处理,也可以在后面引用捕获到的分组内容。例如:想要匹配2024-05-01这样的日期格式,就可以使用:(\d{4})-(\d{1,2})-(\d{1-2}) 来分别捕获年、月和日的值,后面也可以使用\1、 \2\3或者$1、 $2、 $3来引用它们。
(?:abc)非捕获分组,仅使用分组功能,而不捕获。后面也不可以使用\1或者$1来引用。

前瞻(Lookahead)

表达式说明
(?=...)正向前瞻(Positive Lookahead)只有当后面分组中的匹配成立时,才会匹配到它前面的指定内容。例如:cat(?=dog) 会匹配 catdog 中的 cat,但是不会匹配 catcow 或者 catpig 中的 cat。(找到狗前面的猫)
(?!...)负向前瞻(Negative Lookahead)只有当后面分组中的匹配不成立时,才会匹配到它前面的指定内容。例如:cat(?!dog) 不会匹配到catdog中的cat,但是会匹配catcow中的cat。(找到不在狗前面的猫)

后顾(Lookbehind)

表达式说明
(?<=...)正向后顾(Positive Lookbehind)只有当前面分组中的匹配成立时,才会匹配到它后面的指定内容。例如:(?<=cat)dog 会匹配 catdog中的dog,但是不会匹配cowdog或者pigdog中的dog。(找到猫后面的狗)
(?<!...)负向后顾(Negative Lookbehind)只有当前面分组中的匹配不成立时,才会匹配到它后面的指定内容。例如:(?<!cat)dog 不会匹配 catdog中的dog,但是会匹配到cowdogpigdog中的dog。(找到不在猫后面的狗)

常用验证模式(Frequently Used Regex Patterns)

用途表达式
邮件(Email ValIDAtion)^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$
网址(URL Validation)^(https?:\/\/)?([a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5})(:[0-9]{1,5})?(\/.*)?$
金额(Numeric Input Validation)^\d+(?:\.\d+)?$
日期(Date Validation) (YYYY-MM-DD)^(?:19|20)\d\d-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12][0-9]|3[01])$
时间(Time Validation)(HH:MM AM/PM)^(1[0-2]|0?[1-9]):[0-5][0-9] (AM|PM)$
电话(Phone Number Validation)^\+?[1-9]\d{1,14}$
密码强度(Password Strength Validation)^(?=.*[A-Z])(?=.*[a-z])(?=.*\d)(?=.*[^\w\s]).{8,}$
文件扩展名(File Extension Validation)^.+\.(jpg|jpeg|png|gif|pdf)$
IP地址(IP Address Validation)^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
温馨提示
本站网络名称: 青禾博客
本文章永久网址: https://www.yu67.cn/8564.html
网站侵权说明:本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长Email:815854788@qq.com 删除处理。
1 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
2 本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
3 本站资源大多存储在云盘,如发现链接失效,请联系我们第一时间更新。联系青禾站长

相关文章

0 条回复 A文章作者 M管理员
夸夸
夸夸
还有吗!没看够!
  • AC娘
  • Tv小电视
  • 婲喵酱
  • 大黄脸
  • 一人之下
    暂无讨论,说说你的看法吧
+1783运营天数
+1561文章总数
+3用户总数
+0今日注册
+0近7天更新
+0新增文章

客服QQ: 815854788

客服微信

返回顶部