文章目录
- 一、正则表达式
- 1.1 正则的组成结构
- 二、基础语法表格
- 三、元字符
- 3.1 点运算符 -- > .
一、正则表达式
-
正则表达式就是一行字符串,用来描述一定的规则。
-
正则表达式(Regular Expression),通常采用这两个单词的首字母合在一起,把正则表达式相关的变量名定义为 regexp(单数)或 regexps(复数)。
-
在 Java 的 String 类中,也会有几个相关的替换方法,它也是支持正则表达式的,它的参数命名也为 regex 。
-
正则表达式在线练习网站:正则表达式在线练习网站
1.1 正则的组成结构
- 正则表达式通常由一些字符,以及一些元字符组成。
- 普通字符:就是本身作为一个字符时,它不具有其它含义,像我们常用的大小写字母和数字。
- 元字符:就是除了本身作为一个字符外,它还可以表达其它含义。
二、基础语法表格
- 首先是最基础的匹配规则
single char(单字符) | quantifiers(数量) | position(位置) |
---|---|---|
\d 匹配数字 | * 0个或者多个 | ^一行的开头 |
\w 匹配word(数字、字母) | + 1个或者更多,至少一个 | $一行的结尾 |
\W 匹配非word(数字、字母) | ? 0个或1个,一个Optional | \b 单词“结界”(word bounds) |
\s 匹配white space (包括空格、tab等) | {min,max}出现次数在一个范围内 | |
\S 匹配非white space(包括空格、tab等) | {n}匹配出现n次的 | |
. 匹配任何,任何的字符 |
三、元字符
- 正则表达式主要依赖于元字符。元字符不代表它们本身的字面意思,它们都是有特殊的含义。一些元字符写在方括号( [ ] )中的时候有一些特殊的意思。
元字符 | 描述 |
---|---|
. | 点匹配任意单个字符,除了换行符。 |
[ ] | 字符种类。匹配方括号( [ ] )内的任意字符。 |
[^ ] | 否定的字符种类。匹配除了方括号里的任意字符。 |
* | 匹配>=0个重复的在 * 号之前的字符。 |
+ | 匹配>=1个重复的 + 号前的字符。 |
? | 标记 ? 之前的字符为可选。 |
{n,m} | 匹配 num 个大括号之前的字符或字符集(n <= num <= m)。 |
(xyz) | 字符集,匹配符号前或后的字符。 |
| | 或运算符,匹配符号前或后的字符。 |
\ | 转义字符,用于匹配一些保留的字符 ` [ ] ( ) . * + ? ^ $ |
^ | 从开始行开始匹配。 |
$ | 从末端开始匹配。 |
3.1 点运算符 – > .
- “ . ” 是元字符中最简单的例子。“ . ” 匹配任意单个字符,但不匹配换行符。例:表达式 [. . . o] 匹配3个(几个点就几位)任意字符后面跟着是 [ o ] 的字符串。