Powershell - 正则表达式

正则表达式是一种特殊的字符序列,可帮助你使用模式中保存的专用语法来匹配或查找其他字符串或字符串集。它们可用于搜索,编辑或操作文本和数据。

下面列出了 PowerShell 中可用的所有正则表达式元字符语法 -

子表达式 匹配
^ 匹配行的开头。
$ 匹配线的末尾。
. 匹配除换行符之外的任何单个字符。使用 m 选项也可以匹配换行符。
[...] 匹配括号中的任何单个字符。
[^...] 匹配不在括号中的任何单个字符。
\A 整个字符串的开头。
\z 整个字符串的结尾。
\Z 除允许的最终行终止符之外的整个字符串的结尾。
re* 匹配前面表达式的 0 次或更多次出现。
re+ 匹配前一项中的一项或多项。
re? 匹配前面表达式的 0 或 1 次出现。
re{ n} 准确匹配前面表达式的 n 次出现次数。
re{ n,} 匹配前面表达式的 n 次或多次出现。
re{ n, m} 匹配前面表达式的至少 n 次和最多 m 次出现。
a | b 匹配 a 或 b。
(re) 对正则表达式进行分组并记住匹配的文本。
(?: re) 将正则表达式分组而不记住匹配的文本。
(?> re) 匹配独立模式而无需回溯。
\w 匹配单词字符。
\W 匹配非单词字符。
\s 匹配空白。相当于[\t \n \r \n]。
\S 匹配非空白。
\d 匹配数字。相当于[0-9]。
\D 匹配非数字。
\A 匹配字符串的开头。
\Z 匹配字符串的结尾。如果存在换行符,则它在换行符之前匹配。
\z 匹配字符串的结尾。
\G 匹配最后一场匹配结束的点。
\n 反向捕获组号 n
\b 在括号外部匹配单词边界。在括号内匹配退格(0x08)。
\B 匹配非字边界。
\n, \t 匹配换行符,回车符,制表符等。
\Q 转义(引用)所有字符,直到 \E
\E 结束引用以 \ Q 开头。

这是一个完整的示例,展示了如何在 PowerShell 中使用正则表达式;

匹配 描述
匹配字符 支持的正则表达式字符的示例。
匹配字符类 支持的字符类示例。
匹配量词 支持的量词示例。