Powershell - 正则表达式

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

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

子表达式 匹配
^ 匹配行的开头。
$ 匹配行尾。
匹配除换行符之外的任何单个字符。 使用 m 选项也可以匹配换行符。
[...] 匹配括号中的任何单个字符。
[^...] 匹配不在括号中的任何单个字符。
\A 整个字符串的开头。
\z 整个字符串的结尾。
\Z 整个字符串的结尾,除了允许的最后行终止符。
重新* 匹配前面的表达式出现 0 次或多次。
re+ 匹配 1 个或多个之前的内容。
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\f]。
\S 匹配非空白。
\d 匹配数字。 相当于[0-9]。
\D 匹配非数字。
\A 匹配字符串的开头。
\Z 匹配字符串的结尾。 如果存在换行符,它将匹配换行符之前的位置。
\z 匹配字符串的结尾。
\G 匹配上一个匹配结束的点。
\n 向后引用捕获组号"n"。
\b 匹配括号外的单词边界。 匹配括号内的退格键 (0x08)。
\B 匹配非单词边界。
\n, \t 等 匹配换行符、回车符、制表符等
\Q 转义(引用)\E 之前的所有字符。
\E 结束以 \Q 开头的引用。

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

序号 匹配和描述
1 匹配字符

支持的正则表达式字符示例。

2 匹配字符类

支持的字符类示例。

3 匹配量词

支持的量词示例。