导图社区 正则表达式总结
必看!一张图带您了解正则表达式的内容,其中包含的内容有用途、选项、模式、元字符、位置边界、分组表达式、常用的表达式等重点内容,快快收藏下图学习起来吧!
编辑于2019-07-26 05:34:11程序猿知识技能总结大全,java、python、正则表达式、Linux等多方面知识导图
包含抖音运营、短视频运营要点、运营之光、从零开始做运营、学会写作等多个运营读书笔记、运营知识框架等
产品、运营工具包大全:办公工具、文字工具、音频工具、视频工具、社群工具、公众号辅助工具、排版工具、图片工具、H5工具、小程序工具等
《2025年最新版小红书运营知识地图》是一份全面的小红书运营指南,涵盖了从账号搭建、内容创作、用户互动到数据分析、品牌合作等各个环节。文件内容丰富,实用性强,是博主、品牌方及营销人员必读的运营宝典。通过这份地图,可以轻松掌握小红书运营的核心技巧,提高用户关注度,提升品牌影响力。如果觉得有帮助,欢迎点赞,收藏、克隆!
这是一篇关于如何阅读一本好书的思维导图,主要内容包括:主题阅读,阅读不同读物的方法,分析阅读,阅读的层次。
这是一篇关于宇宙结构的思维导图,主要内容包括:一、基础天体单位,二、星系(Galaxy),三、星系群与星系团,四、超星系团(Supercluster),五、宇宙大尺度结构,六、科学研究与未解之谜。
社区模板帮助中心,点此进入>>
程序猿知识技能总结大全,java、python、正则表达式、Linux等多方面知识导图
包含抖音运营、短视频运营要点、运营之光、从零开始做运营、学会写作等多个运营读书笔记、运营知识框架等
产品、运营工具包大全:办公工具、文字工具、音频工具、视频工具、社群工具、公众号辅助工具、排版工具、图片工具、H5工具、小程序工具等
《2025年最新版小红书运营知识地图》是一份全面的小红书运营指南,涵盖了从账号搭建、内容创作、用户互动到数据分析、品牌合作等各个环节。文件内容丰富,实用性强,是博主、品牌方及营销人员必读的运营宝典。通过这份地图,可以轻松掌握小红书运营的核心技巧,提高用户关注度,提升品牌影响力。如果觉得有帮助,欢迎点赞,收藏、克隆!
这是一篇关于如何阅读一本好书的思维导图,主要内容包括:主题阅读,阅读不同读物的方法,分析阅读,阅读的层次。
这是一篇关于宇宙结构的思维导图,主要内容包括:一、基础天体单位,二、星系(Galaxy),三、星系群与星系团,四、超星系团(Supercluster),五、宇宙大尺度结构,六、科学研究与未解之谜。
正则表达式总结
用途
匹配
判断给定的字符串是否与特定正则表达式相匹配,常用函数为isMatch,或者Match,返回值通常为False或者True
获取匹配的内容
使用正则表达式搜索指定的字符串,将符合条件的全部内容都提取出来。通常使用Matches函数,返回值为数组,每个项目就是满足正则表达式的文本内容;
替换
使用正则表达式搜索指定的字符串,将符合条件的内容替换为特定的字符串。通常使用Replace或者ReplaceAll函数。
拆分字符串
选项
是否忽略大小写
Case-insensitive匹配时不区分大小写。
多行模式
Multiline mode更改^和$的含义,使它们分别在任意一行的行首和行尾匹配,而不仅仅在整个字符串的开头和结尾匹配。(在此模式下,$的精确含意是:匹配\n之前的位置以及字符串结束前的位置.)
单行模式
Single-line mode更改.的含义,使它与每一个字符匹配(包括换行符\n)。
忽略空白字符
Ignore white space忽略表达式中的非转义空白并启用由#标记的注释。
清晰的
Explicit (named)仅捕获已被显式命名的组。
模式
贪婪模式
尽可能的从文本的开头到结尾
懒惰模式
与贪婪型相反,需要增加?,代表找到第一满足条件的即可。
常用表达式
手机号码
固定电话
0\d{2}-\d{8}|0\d{3}-\d{7}|\(?0\d{2}[) -]?\d{8}
电子邮件
^([a-z0-9]*[-_]?[a-z0-9]+)@([a-z0-9]+\.)?([a-z0-9]*[-_]?[a-z0-9]+)[\.][a-z]{2,3}([\.][a-z]{2})?$
日期
IP地址
((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)
URL地址
身份证号码
密码
地址
邮编
汉字
[\u2E80-\u9FFF]+
参考资料
.net:Regular expressions quick reference
正则表达式必知必会.pdf
[精通正则表达式(第三版)].(美)佛瑞德.扫描版.pdf
.NET正则基础之——.NET正则匹配模式
正则表达式30分钟入门教程
c#正则blog
c#常用正则表达式
split方法,与正则表达式
元字符
元字符是一些在正则表达式中有特殊含义的字符
通用字符
数字(digit)
\d
匹配一个十进制的数字,等价与[0-9]
\D
匹配一个非(十进制的数字),等价与[^0-9]
字符(word)
\w
匹配一个(字母或数字或下划线),等价于[a-zA-Z0-9_]
\W
匹配一个非(字母或数字或下划线),等价于[^a-zA-Z0-9_]
空白(space)
\s
匹配任意一个空白字符,等价于[\f\r\n\t\v]
\S
匹配任意一个非空白字符,等价于[^\f\r\n\t\v]
\为转义符
\t
\r
\n
\v
\b
\e
ASCII转义符号
\f
Form feed
\a
Bell (alarm)
\c
ASCII控制符号
其他
非ASCII值字符
\o
\x
\u
匹配4个16进制的Unicode
匹配集合中的某个字符
[a-z]
匹配全部小写字符的集合(a,b,c…………x,y,z)中的任何1个
[A-Z]
匹配全部大写字符的集合(A,B,C…………X,Y,Z)中的任何1个
[0-9]
匹配全部数字集合(0,1,2,3,4,5,6,7,8,9,0)中的任何1个,等价于\d,等价于[0123456789]
非数字
[^0-9],等价于\D
其他集合
例如[02468],代表只匹配集合(0,2,4,6,8)中任何一个字符;符号|相当于或者的意思。
^
匹配除去集合内部的字符的全部字符
-
在集合中才有意义,在[]之外使用,只能是普通字符
重复匹配
*
没有上限
+
?
精确
{n}
{n,}
{n,m}
配合?使用懒惰模式
位置边界
字符串
^
\A
字符串开头(类似^,但不受处理多行选项的影响)
\Z
字符串结尾或行尾(不受处理多行选项的影响)
$
\z
字符串结尾(类似$,但不受处理多行选项的影响)
单词
\b
\B
零宽断言
正向前查找
向前查找指定了一个必须匹配但不在结果中返回的模式;可以使用.和+的元字符,长度可变;匹配exp前面的位置
正向后查找
匹配exp后面的位置只能是固定长度
负向前查找
匹配后面跟的不是exp的位置
负向后查找
(?<!exp)匹配前面不是exp的位置
分组子表达式
子表达式是更大表达式的一个部分分析子表达式时,应该从内到外进行;
允许多层嵌套
回溯引用
使用小括号指定一个子表达式后,匹配这个子表达式的文本(也就是此分组捕获的内容)可以在表达式或其它程序中作进一步的处理。默认情况下,每个分组会自动拥有一个组号,规则是:从左向右,以分组的左括号为标志,第一个出现的分组的组号为1,第二个为2,以此类推。不同的语言使用方法可能不一样可以跨模式使用
.net
例子
\b(\w+)\b\s+\1\b可以用来匹配重复的单词,像go go, 或者kitty kitty。
捕获
(exp)
(exp)匹配exp,并捕获文本到自动命名的组里
可以命名的
(?<name>exp)匹配exp,并捕获文本到名称为name的组里,也可以写成(?'name'exp)
(?:exp)
匹配exp,不捕获匹配的文本,也不给此分组分配组号
(?#comment)注释
前后查找
(?>exp)
条件表达式
不是所有的开发语言都支持这个特性
.net
(?(exp)yes | no)
其他
匹配纯文本
字符点(.)
可以匹配任意一个单个的字符、字母、数字、包括.本身(除去换行符号);匹配.本身时,使用转义符\
原子
打印字符
非打印字符
内联模式
必须放在正则表达式的最前面
i
m
n
s
x
定界符
除了字母、数字、正斜线以外的任何字符,一般用//表示
|