正则表达式介绍
正则表达式介绍
CAMELLIA正则表达式
正则表达式(Regular Expression,简称正则或regex)是一种用于匹配文本模式的强大工具。
它被广泛应用于文本处理、数据验证、信息提取等领域。正则表达式使用特定的语法规则来描述文本的搜索模式。
正则表达式常见符号
- 元字符
.
:匹配除换行符以外的任何单个字符。\w
:匹配一个单词字符(字母、数字或下划线)\s
:匹配一个空白字符(空格、制表符、换页符等)。\d
:匹配一个数字字符。\b
:匹配单词的开始或者结束。^
:匹配字符串的开头。$
:匹配字符串的结尾。
- 转义字符
\.
:表示一个普通的.字符。\*
:表示一个普通的*字符。- 等. . .
- 重复次数
*
:重复零次或者更多次。+
:重复一次或者更多次。?
:重复零次或者一次。{n}
:重复n次。{n,}
:重复n次或者更多次。{n,m}
:重复n到m次。
- 字符类
[]
[abcdef]
:匹配abcdef这几个字符中的任意一个字符。[0-9]
:匹配0-9中的任意一个数字。[a-zA-Z0-9]
:匹配a-z、A-Z、0-9的任意一个字符。[.?!]
:匹配标点符号。(.或?或!)[abc-]
:匹配abc-四个字符中的任意一个字符。(注意:-只能出现在末尾,如果-在中间则表示区间)
- 分支条件
|
0\d{2}-\d{8}|0\d{3}-\d{7}
:这个表达式能匹配两种以连字符分割的电话号码。一种是三位区号,八位本地号(eg:010-12345678)。另一种是四位区号,七位本地号(eg:0376-1234567)。
- 分组
()
(\d{1,3}.){3}\d{1,3}
:是一个简单的ip匹配表达式,其中(\d{1,3}.)
匹配由1到3个数字和一个点 . 组成的模式,重复三次。
- 反义
\W
:匹配任意不是字母、数字、下划线、汉字的字符,相当于[^a-zA-Z0-9_]
\S
:匹配任意不是空白符的字符。\D
:匹配任意非数字的字符。\B
:匹配不是以单词开头或结束的位置。[^x]
:匹配除了x以外的任意字符。[^aeiou]
:匹配除了aeiou这几个字母以外的任意字符。