正则表达式

 

适用于: System Center 2012 SP1 - Orchestrator,System Center 2012 - Orchestrator,System Center 2012 R2 Orchestrator

在 System Center 2012 - Orchestrator 中,利用正则表达式可以将字符串与模式匹配。 正则表达式可以包含多个定义模式的不同元素。智能链接属性 使用正则表达式来执行模式匹配。

高级正则表达式

要构建正则表达式,你必须创建一个表达式,其中包含你所搜索的文本,以及用于创建模式(描述你所搜索的文本的显示方式)的特殊字符。

字符 含义
. 匹配除换行符外的任何字符。
* 匹配前项 0 次或多次。 例如,“a*”模式匹配一行中包含 a 的任何字符串“a”、“aaa”、“aaaaaaaaaaaa”以及空字符串“”。 要匹配包含任何字符的任何字符串,请在星号后使用点。 例如,“a.*”匹配以字母“a”开头并以任何字符串结束的任何文本,例如“abbb”、“abcdef”或“automatic restart”。
+ 匹配前项 1 次或多次。 这类似于 *,但至少必须有 1 个前项才能进行匹配。 例如,“ab+”模式匹配“abbbbb”、“ab”,但不匹配“a”。 对比而言,“ab*”模式匹配“a”。
? 匹配前项 0 次或 1 次。 例如,“ab?” 模式匹配“a”或“ab”,但不匹配“abbb”。
| 匹配前面的表达式或后面的表达式。 逻辑 OR 运算符。
$ 匹配输入或行结尾的表达式。 例如,“ab$”匹配“I took a cab”或“drab”,但不匹配“absolutely not”。
^ 匹配输入或行开头的表达式。 例如,“^ab”匹配“absolutely not”或“abacuses are great!” ,但不匹配“I took a cab”或“drab”。
\ 适用于通常被视为特殊字符的字符。 这指明下一个字符是文本,并且不会被视为特殊字符。 例如,“\.” 表示匹配“.”字符,而不只是任何字符。
[ ] 一个字符集。 匹配括在其中的字符的任何一个。 你可以使用连字符指定字符范围。 例如,[a-zA-Z] 匹配字母表的任何字母。
[^ ] 排除的字符集。 这与 [] 相反。 如果方括号内的任何字符存在,则正则表达式匹配失败。 你可以使用连字符指定字符范围。 例如,[^a-zA-Z] 确保不存在字母表中的任何字母。
( ) 组表达式。 这将表达式分组为你可以应用特殊字符的一个项。 例如,“a*(ba)+”匹配“ba”、“aba”或“ababa”,但不匹配“abbba”或“abaa”

示例

表达式 含义
[a-zA-Z]+ 文本仅包含字母表的字母。
^\* 文本以星号开头。
(abc|def)$ 文本以“abc”或“def”结尾。
Ha..y 文本以“Ha”开头,后跟任意两个字符,后面再跟“y”。
Help.* 文本为“Help”,后跟任意数量的其他字符。

请参阅

数据操作