正则表达式常用操作方法
1. 正则表达式基础
1.1 正则表达式简介
1.1.1 正则表达式的定义
- 正则表达式是一种强大的文本处理工具,用于匹配、查找、替换、提取和转换字符串。
- 正则表达式由一系列特殊字符和通配符组成,可以用来描述文本的模式。
1.1.2 正则表达式的用途
- 在编程中,正则表达式常用于字符串搜索、替换、验证和处理。
- 它可以用于提取电子邮件地址、电话号码、URL等特定模式的信息。
- 正则表达式在数据清洗、文本分析和自然语言处理等领域有着广泛的应用。
1.2 正则表达式语法
1.2.1 元字符
- 点号(.):匹配除换行符以外的任意字符。
- 星号(*):匹配前面的子表达式零次或多次。
- 加号(+):匹配前面的子表达式一次或多次。
- 问号(?):匹配前面的子表达式零次或一次。
- 括号(()):用于组合子表达式,也可以用于捕获匹配的文本。
- 竖线(|):表示逻辑“或”操作。
- 方括号([]):表示匹配指定范围内的任意字符。
- 圆括号({}):用于指定数量词(如{n}表示匹配前一个字符n次)。
- 反斜线(\):用于转义特殊字符。
1.2.2 定位符
- 竖线(^):匹配字符串的开头。
- 美元符号($):匹配字符串的结尾。
- 井号(
#):用于注释,不参与匹配。
- 美元符号和竖线(\A):匹配字符串的开头。
- 美元符号和井号(\z):匹配字符串的结尾。
- 美元符号和竖线(\Z):匹配字符串的结尾,如果字符串以换行符结尾,则匹配到换行符之前。
- 美元符号和点号(\z):与\Z相同。
- 美元符号和加号(\G):匹配上一次匹配的结束位置。
- 美元符号和星号(\Z\z):匹配整个字符串。
1.3 常用正则表达式操作
1.3.1 字符匹配
- 匹配任意单个字符:[\s\S]
- 匹配数字:[0-9]
- 匹配字母:[a-zA-Z]
- 匹配字母或数字:[a-zA-Z0-9]
- 匹配单词边界:\b
1.3.2 数量词
- 匹配任意字符一次:.
- 匹配任意字符零次或多次:.*
- 匹配任意字符一次或多次:.+
- 匹配任意字符零次或一次:.?
- 匹配字符n次:{n}
- 匹配字符n到m次:{n,m}
- 匹配字符至少n次:{n,}
1.3.3 选择和分组
- 匹配任意字符:.
- 匹配字符A或字符B:A|B
- 匹配字符A和字符B:(A)(B)
- 匹配字符A或字符B或字符C:A|B|C
- 匹配字符A且字符B:A(B)?
1.3.4 字符类
- 匹配任何非字母数字字符:\W
- 匹配任何非字母字符:\W
- 匹配任何非数字字符:\D
- 匹配任何非字母数字字符:\W
- 匹配任何空白字符:\s
- 匹配任何非空白字符:\S
1.3.5 特殊字符
- 匹配任意字符:.
- 匹配换行符:\n
- 匹配制表符:\t
- 匹配回车符:\r
- 匹配空格:\s
- 匹配任意单引号:'
- 匹配任意双引号:"
- 匹配任意撇号:`
- 匹配任意破折号:-
- 匹配任意下划线:_
- 匹配任意斜杠:/
- 匹配任意点号:.
- 匹配任意星号:*
- 匹配任意加号:+
- 匹配任意问号:?
- 匹配任意竖线:|
- 匹配任意括号:(
- 匹配任意反括号:)
- 匹配任意中括号:[
- 匹配任意反中括号:]
- 匹配任意大括号:{
- 匹配任意反大括号:}
- 匹配任意美元符号:$
- 匹配任意井号:\
- 匹配任意百分号:%
- 匹配任意点号:.
- 匹配任意星号:*
- 匹配任意加号:+
- 匹配任意问号:?
- 匹配任意竖线:|
- 匹配任意反斜线:\
1.4 正则表达式实战应用
1.4.1 文本匹配
- 匹配邮箱地址:\S+@\S+.\S+
- 匹配电话号码:\d{3}-\d{3}-\d{4}
- 匹配URL:http(s)?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*$$,]|(?:%[0-9a-fA-F][0-9a-fA-F]))+
- 匹配中文文本:[\u4e00-\u9fa5]+
1.4.2 文本替换
- 替换空格为逗号:(\s+)|\s+|\1,
- 替换邮箱地址为星号:\S+@\S+.\S+|*
- 替换电话号码为星号:\d{3}-\d{3}-\d{4}|***
- 替换URL为星号:http(s)?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*$$,]|(?:%[0-9a-fA-F][0-9a-fA-F]))+|****
- 替换中文文本为星号:[\u4e00-\u9fa5]+|***
1.4.3 文本提取
- 提取邮箱地址:(\S+@\S+.\S+)
- 提取电话号码:(\d{3}-\d{3}-\d{4})
- 提取URL:http(s)?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*$$,]|(?:%[0-9a-fA-F][0-9a-fA-F]))+
- 提取中文文本:[\u4e00-\u9fa5]+
1.4.4 文本处理
- 删除所有空格:\s+|\S+
- 删除所有换行符:\n|\r|\r\n
- 删除所有特殊字符:[^\w\s]|\w|\s
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字字符:\D
- 删除所有空白字符:\s
- 删除所有非空白字符:\S
- 删除所有非字母数字字符:\W
- 删除所有非字母字符:\W
- 删除所有非数字




