Wildcard Patterns
For settings that allow wildcards, the following are allowed in the wildcard patterns:
Pattern | Description |
---|---|
? |
any one character |
* |
any sequence of zero or more characters |
[ABC] |
one character from a set |
[0-9] |
one character from a range |
[ABC0-9] |
combination of the above |
ALT1|ALT2 |
alternatives for the entire string |
(ALT1|ALT2) |
alternatives within the overall string |
\ |
treat the next character as a literal |
Matches using wildcard patterns are not case-sensitive.
If more complex pattern matching is required, a regular expression pattern can be specified by
surrounding the pattern with slashes (/
). See Regular Expressions for more
information.
Examples
Pattern | Description |
---|---|
?XYZ-* |
A model number that contains "XYZ-" starting at the second position. |
*EF |
A model number that ends with "EF". |
?(XYZ|ABC)-* |
A model number that contains either "XYZ-" or "ABC-" starting at the second position. |
?AB[CD]-* |
Any model number that contains "ABC-" or "ABD-" starting at the second position. |
*[0-9][0-9] |
A model number that ends with two numerical digits. |
(1234|2345|3456)* |
Serial numbers that start with "1234", "2345", or "3456". |
1234\*5678 |
Model number "1234*5678". |
Regular Expressions
Regular expressions provide an extremely powerful and flexible way to specify complex patterns. They
can be used when simple wildcard patterns are insufficient. To specify a wildcard pattern using a
regular expression, surround the expression with slashes (/
).
The regular expressions are matched using these options:
- Matches are not case-sensitive.
- Dot (.) matches every character (instead of every character except \n).
- Cultural differences in language is ignored.
Note that ^
and $
(or \A
and \Z
) should normally be used to indicate start and end
positions.
This table demonstrates the regular expression equivalents for the simple wildcard examples from the "Wildcard Patterns" section:
Simple Wildcard Example | Regular Expression Equivalent |
---|---|
?XYZ-* |
^.XYZ- |
*EF |
EF$ |
?(XYZ|ABC)-* |
^.(XYZ|ABC)- |
?AB[CD]-* |
^.AB[CD]- |
*[0-9][0-9] |
\d\d$ |
(1234|2345|3456)* |
^(1234|2345|3456) |
1234\*5678 |
^1234\*5678$ |
The following examples demonstrate more complex scenarios that cannot be expressed using simple wildcards:
Pattern | Description |
---|---|
^.(?!XYZ-) |
Any model number that does not contain "XYZ-" starting at the second position. |
^(?!(1234|1235|1236)$).+ |
Any serial number except for 1234, 1235, or 1236. |
(?-i)^.XYZ- |
A model number that contains "XYZ-" starting at the second position, case-sensitive (i.e., "AXYZ-123" would match, but "axyz-123" would not). |
^((?!-FR).)*$ |
Any model number that does not contain "-FR" anywhere within the number. |
For information about the regular expression syntax that is supported, see "Regular Expression Language - Quick Reference" in Microsoft Docs.