在我们处理文件时,很多时候会用到查找与替换。当我们想将文件中某一部分替换替换文件中另一部分时,怎么办呢? 下面正则表达式 给我提供方法。
正则表达式,提供复杂 并且弹性的查找与替换
注意: 不支持多行表达式 (involving \n, \r, etc).
1 基本表达式
| 符号 | 解释 |
|---|---|
| . | 匹配任意字符,除了新一行(\n)。也就是说 “.”可以匹配 \r ,当文件中同时含有\r and \n时,会引起混乱。要匹配所有的字符,使用\s\S。 |
| (…) | 这个匹配一个标签区域. 这个标签可以被访问,通过语法 \1访问第一个标签, \2 访问第二个, 同理 \3 \4 … \9。 这些标签可以用在当前正则表达式中,或则替search和replace中的换字符串。 |
| \1, \2, etc | 在替换中代表1到9的标签区域(\1 to \9)。例如, 查找字符串 Fred([1-9])XXX 并替换为字符串 Sam\1YYY的方法,当在文件中找到Fred2XXX的字符串时,会替换为Sam2YYY。注意: 只有9个区域能使用,所以我们在使用时很安全,像\10\2 表示区域1和文本”0”以及区域2。 |
| […] | 表示一个字符集合, 例如 [abc]表示任意字符 a, b or c.我们也可以使用范围例如[a-z] 表示所以的小写字母。 |
| [^…] | 表示字符补集. 例如, [^A-Za-z] 表示任意字符除了字母表。 |
| ^ | 匹配一行的开始(除非在集合中, 如下). |
| $ | 匹配行尾. |
| * | 匹配0或多次, 例如 Sa*m 匹配 Sm, Sam, Saam, Saaam 等等. |
| + | 匹配1次或多次,例如 Sa+m 匹配 Sam, Saam, Saaam 等等. |
| ? | 匹配0或者1次, 例如 Sa?m 匹配 Sm, Sam. |

本文详细介绍正则表达式的各种符号及其应用场景,包括基本表达式、标记与分组、特殊符号、字符类以及替换操作等内容,并提供了实际案例帮助理解。
最低0.47元/天 解锁文章
9137

被折叠的 条评论
为什么被折叠?



