将模式匹配应用于字符串字段

Azure DevOps Server 2020 |Azure DevOps Server 2019 |TFS 2018

可以使用 MATCH 元素强制字符串类型的字段中的值遵循指定的模式。 如果定义多个 MATCH 元素,如果该值与为字段指定的任何模式匹配,该值将有效。 如果至少有一个元素成功,则字段具有有效值。

注意

若要向定义添加规则 FIELD ,请使用 witadmin 命令行工具导入和导出工作项类型的定义。 请参阅 导入、导出和管理工作项类型

MATCH 元素语法结构

使用 MATCH 元素通过定义字符串类型字段中的值必须匹配的模式来强制实施基本模式匹配。

<MATCH pattern="patternValue" for="userGroupName" not="userGroupName" />  
  

特性

可以指定 MATCH 规则适用的用户。 如果未定义任何可选属性,Team Foundation Server 中的所有有效用户和组都必须指定与模式匹配的值。

属性 说明
pattern 必需。 仅对字符串强制实施基本模式匹配,仅适用于其字符串 syncnamechanges="false"

patternValue 的有效值为“A”、“N”和“X”,表示以下类型的字符:

- “A”表示字母字符。
- “N”表示数字字符。
- “X”表示任何字母数字字符。

所有其他值都作为原义字符。 最小长度:1;最大长度:255。

模式值:^[^\\]*$

模式值示例:xxxxx.nn.nn
for 可选。 指定 Team Foundation 中应用规则的用户或组的名称。 有效名称为一个文本字符串,该字符串含 1 到 255 个字符。

模式值:^[^\\]+\\[^\\]+$

模式值示例: \UserID
not 可选。 指定 Team Foundation 中不应用规则的用户或组的名称。 有效名称为一个文本字符串,该字符串含 1 到 255 个字符。

模式值:^[^\\]+\\[^\\]+$

模式值示例: \UserID

模式匹配示例

以下示例说明各种字段用法的成功和失败模式匹配。

发行版号

模式:ANN.NN.NN

验证/失败 示例
验证 R01.03.04 或 V05.08.99
验证失败 1.3.4、V5.8.99 或 v1.3

灵活的标识符

模式:XXX-XXX

验证/失败 示例
验证 001-abc 或 a00-b02
验证失败 1-abc 或 001.abc

优先级

模式:PN

验证/失败 示例
验证 P1、P5 或 P9
验证失败 1 或 P10

匹配标记不区分大小写。 因此,“PN”与 P1 和 p1 匹配。

规则和规则评估