用于“查找和替换”的正则表达式(二)

本文介绍了一系列正则表达式的高级用法,包括特殊符号的含义与应用场景,如重复匹配、分组、标记文本等,帮助读者深入理解并灵活运用正则表达式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

“查找”和“替换”操作中所有有效正则表达式的列表,比“表达式生成器”中可显示的列表长。尽管“表达式生成器”中没有显示下面的正则表达式,但您可以在“查找内容”或“替换为”字段中使用它们。

表达式语法说明示例
最少、零个或更多个@匹配前面表达式的 0 个或更多搜索项,并匹配尽可能少的字符。e.@e 匹配“enterprise”中的“ente”和“erprise”,但不匹配完整的单词“enterprise”。
最少、一个或更多个#匹配前面表达式的一个或更多搜索项,并匹配尽可能少的字符。ac# 匹配包含字母“a”和至少一个字母“c”的单词,如“ace”。a.#s 匹配单词“access”中的“acces”。
重复 n 次^n匹配前面表达式的 n 次出现。[0-9]^4 匹配任意 4 位数字的序列。
分组()允许将一组表达式组合在一起。如果要在一次操作中搜索两个不同的表达式,可以使用分组表达式来组合这两个表达式。如果要搜索 - [a-z][1-3] 或 - [1-10][a-z],应按如下方式组合这两个表达式:([a-z][1-3]) | ([1-10][a-z])。
第 n 个带标记的文本/n在“查找”或“替换”表达式中,指示第 n 个带标记的表达式所匹配的文本,其中 n 是从 1 至 9 的数字。在“替换”表达式中,/0 插入整个匹配的文本。如果搜索 a{[0-9]},并替换为 /1,则“a”后跟数字的所有搜索项由跟随的数字替换。例如,“a1”由“1”替换,类似地,“a2”由“2”替换。
右对齐字段/(w,n)在“替换”表达式中,将字段中第 n 个带标记的表达式右对齐至少 w 字符宽。如果搜索 a{[0-9]},并替换为 /(10,1),则“an”的搜索项由整数替换,并通过 10 个空格右对齐。
左对齐字段/(-w,n)在“替换”表达式中,将字段中第 n 个带标记的表达式左对齐至少 w 字符宽。如果搜索 a{[0-9]},并替换为 /(-10,1),则“an”由整数替换,并通过 10 个空格左对齐。
禁止匹配~(X)当 X 出现在表达式中的此位置时禁止匹配。real~(ity) 匹配“realty”和“really”中的“real”,但不匹配“reality”中的“real”。
字母数字字符:a匹配表达式 ([a-zA-Z0-9])。匹配任何字母数字字符,如“a”、“A”、“w”、“W”、“5”等等。
字母字符:c匹配表达式 ([a-zA-Z])。匹配任何字母字符,如“a”、“A”、“w”、“W”等等。
十进制数字:d匹配表达式 ([0-9])。匹配任何数字,如“4”和“6”。
十六进制数:h匹配表达式 ([0-9a-fA-F]+)。匹配任何十六进制数,如“1A”、“ef”和“007”。
有理数:n匹配表达式 (([0-9]+.[0-9]*)|([0-9]*.[0-9]+)|([0-9]+))。匹配任何有理数,如“2007”、“1.0”和“.9”。
字母字符串:w匹配表达式 ([a-zA-Z]+)。匹配任何仅包含字母字符的字符串。
转义符/eUnicode U+001B。匹配“转义”控制字符。
Bell/gUnicode U+0007。匹配“Bell”控制字符。
Backspace/hUnicode U+0008。匹配“Backspace”控制字符。
制表符/tUnicode U+0009。制表符匹配。
Unicode 字符/x#### 或 /u####匹配 Unicode 值给定的字符,其中 #### 是十六进制数。可以用 ISO 10646 代码点或两个提供代理项对的值的 Unicode 代码点指定基本多语种平面(即一个代理项)外的字符。/u0065 匹配字符“e”。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值