正则表达式由可用于搜索文本变化形式的各种模式组成。如果没有正则表达式,您必须知道要搜索的确切短语;使用正则表达式,您可以找到遵循特定模式的所有文本。即使查找/替换对话框中的正则表达式复选框已打开,您仍然可以搜索确切短语。在这种情况下,您必须从短语中移除正则表达式操作符(请参阅语法)。
用于搜索文本的正则表达式的语法
正则表达式通常包括一些常量文本,以及对文本其余部分的一些限制或通配符。如果要将其中一个操作符用作原义文本,则必须在字符前面加上反斜杠。
以下是仅用于搜索文本的正则表达式列表。搜索文本时,还可以使用适用于所有运算类型的正则表达式。
字符 |
含义 |
[ ] |
这些括号内的字符描述了字符类或自定义通配符。 |
* |
前导字符(或字符类)允许重复零。 |
+ |
前导字符(或字符类)必须至少重复一次。 |
- |
当在字符类中使用时,表示字符范围。 |
用于搜索文本的正则表达式示例
- 查找以A开头并以2结尾的行:
^A.*2$ |
|
^A |
行必须以 A 开头 |
|
.* |
零个或多个字符(任意字符) |
|
2$ |
行必须以 2 结尾 |
示例: |
|
Abc-12 |
找到 |
|
A2 |
找到 |
|
1Abc-12 |
未找到(行不以 A 开头) |
|
Abc-123 |
未找到(行不以 2 结尾) |
- 查找包含Plan一词,并且后跟可选空格和 4 位数字的文本:
Plan *:d:d:d:d |
|
Plan |
短语必须以原义词Plan开头 |
|
* |
(空格字符后跟 *)零个或多个空格字符 |
|
:d:d:d:d |
任意四位数字 |
示例: |
|
My Plan1234 |
找到 |
|
Plan 1234 |
找到 |
|
My Plan 123a |
未找到(Plan 后只有 3 位数字) |
- 查找包含字符[#,但不后跟 1、2、3、4 或 B 的文本:
\[#[^1-4B] |
|
\[ |
原义字符 [(必须转义) |
|
# |
原义字符 #(不是操作符,不需要转义) |
|
[^ |
作为字符类的开头,表示除了类中所描述的任何字符 |
|
1-4B |
范围 1-4(1、2、3、4)和 B |
|
] |
作为字符类的结尾 |
示例 |
|
Part [#9778C] |
找到 |
|
Lot [#554] |
找到 |
|
Part #977 |
未找到(# 前面没有 [) |
|
Part [#155A] |
未找到(# 后跟 1) |
- 查找以Detail开头,后跟一个或多个空格,再后跟一个或多个字母数字字符以及一个 Z 的行:
^Detail +:n+Z |
|
^Detail |
行必须以 Detail 开头 |
|
+ |
(空格字符后跟 +)一个或多个空格字符 |
|
:n+ |
一个或多个 ASCII 字母数字字符 |
|
Z |
原义字符 Z |
示例: |
|
Detail 143Z |
找到 |
|
Detail AABZ |
找到 |
|
Plot A Detail 3Z |
未找到(行不以 Detail 开头) |
- 查找 $#,###.## 形式的货币值:
\$[0-9,]+\.:d:d |
|
\$ |
匹配项必须以美元符号开头 |
|
[0-9,]+ |
匹配一个或多位数字或逗号 |
|
\. |
后跟小数点 |
|
:d:d |
后跟两位数字 |
示例: |
|
$12.34 |
找到 |
|
$12,123.00 |
找到 |
|
12,435.00 |
未找到(不以 $ 开头) |
|
$12 |
未找到(不以小数点和两位数字结尾) |