about_Regular_Expressions
主题
about_Regular_Expressions
简短说明
介绍 Windows PowerShell 中的正则表达式。
详细说明
Windows PowerShell 支持以下正则表达式字符。
格式 逻辑 示例
-------- ------------------------------- -----------------------
值 与原始值中任意位置的字符严格匹配。 "book" -match "oo"
. 与任意一个字符匹配。 "copy" -match "c..y"
[值] 与方括号中至少一个字符匹配。 "big" -match "b[iou]g"
[范围] 与范围内至少一个字符匹配。 "and" -match "[a-e]nd"
范围内的多个字符。使用连字符 (-)
可以指定相邻字符。
[^] 与除方括号中的字符以外的 "and" -match "[^brt]nd"
所有字符匹配。
^ 与开头的字符匹配。 "book" -match "^bo"
$ 与结尾的字符匹配。 "book" -match "ok$"
* 与前导字符的所有实例匹配。 "baggy" -match "g*"
? 与前导字符的一个实例匹配。 "baggy" -match "g?"
\ 与后面作为转义字符的字符匹配。 "Try$" -match "Try\$"
Windows PowerShell 支持 Microsoft .NET Framework 正则表达式中可用的字符类。
格式 逻辑 示例
-------- ------------------------------- -----------------------
\p{name} 与 {name} 所指定的命名字符类中的 "abcd defg" -match "\p{Ll}+"
任意字符匹配。支持的名称包括
Unicode 组和块范围,例如 Ll、Nd、
Z、IsGreek 和 IsBoxDrawing。
\P{name} 与未包括在 {name} 中指定的组和 1234 -match "\P{Ll}+"
块范围中的文本匹配。
\w 与任意单词字符匹配。相当于 Unicode "abcd defg" -match "\w+"
字符类别 [\p{Ll}\p{Lu}\p{Lt}\p{Lo} (这与 abcd 匹配)
\p{Nd}\p{Pc}]。如果通过 ECMAScript
选项指定符合 ECMAScript 的行为,
则 \w 相当于 [a-zA-Z_0-9]。
\W 与任意非单词字符匹配。相当于 Unicode "abcd defg" -match "\W+"
类别 [^\p{Ll}\p{Lu}\p{Lt} (这与空格匹配)
\p{Lo}\p{Nd}\p{Pc}]。
\s 与任意空格字符匹配。相当于 Unicode "abcd defg" -match "\s+"
字符类别 [\f\n\r\t\v\x85\p{Z}]。
\S 与任意非空格字符匹配。相当于 Unicode "abcd defg" -match "\S+"
字符类别 [^\f\n\r\t\v\x85\p{Z}]。
\d 与任意十进制数匹配。相当于用于 Unicode 12345 -match "\d+"
的 \p{Nd} 和用于非 Unicode 行为的 [0-9]。
\D 与任意非数字匹配。相当于用于 Unicode "abcd" -match "\D+"
的 \P{Nd} 和用于非 Unicode 行为的 [^0-9]。
Windows PowerShell 支持 .NET Framework 正则表达式中可用的限定符。以下是限定符的一些
示例。
格式 逻辑 示例
-------- ------------------------------- -----------------------
* 指定零或多个匹配项; 例如 \w* "abc" -match "\w*"
或 (abc)*。相当于 {0,}。
+ 与前导字符的重复实例匹配。 "xyxyxy" -match "xy+"
? 指定零或一个匹配项;例如 \w? "abc" -match "\w?"
或 (abc)?。相当于 {0,1}。
{n} 严格指定 n 个匹配项; "abc" -match "\w{2}"
例如 (pizza){2}。
{n,} 指定至少 n 个匹配项; "abc" -match "\w{2,}"
例如 (abc){2,}。
{n,m} 指定至少 n 个但不 "abc" -match "\w{2,3}"
超过 m 个匹配项。
上表中显示的所有比较的计算结果为 true。
请注意,用于正则表达式的转义符反斜杠 (\) 不同于 Windows PowerShell 的转义符。Windows
PowerShell 的转义符为倒引号字符 (`) (ASCII 96)。
有关详细信息,请参阅 Microsoft Developer Network (MSDN) 库中的"正则表达式语言元素"
主题,网址为 https://go.microsoft.com/fwlink/?LinkId=133231。
另请参阅
about_Comparison_Operators
about_Operators