Matching Domains with Regular Expressions

  1. Home
  2. Policy Manager (creating traffic classes)
  3. Matching Domains with Regular Expressions

In the Policy Editor NetScope allows you to match by http domains (such as microsoft.com). However, you may also use Regular Expressions to expand the match so that, for example, you can match all subdomains of microsoft.com. Below is a list of allowed matching expressions.

Metacharacters Defined

MChar Definition
^ Start of a string.
$ End of a string.
. Any character (except \n newline)
| Alternation.
{…} Explicit quantifier notation.
[…] Explicit set of characters to match.
(…) Logical grouping of part of an expression.
* 0 or more of previous expression.
+ 1 or more of previous expression.
? 0 or 1 of previous expression; also forces minimal matching when an expression might match several strings within a search string.
\ Preceding one of the above, it makes it a literal instead of a special character. Preceding a special matching character, see below.

Metacharacter Examples

Pattern Sample Matches
^abc abc, abcdefg, abc123, …
abc$ abc, endsinabc, 123abc, …
a.c abc, aac, acc, adc, aec, …
bill|ted ted, bill
ab{2}c abbc
a[bB]c abc, aBc
(abc){2} abcabc
ab*c ac, abc, abbc, abbbc, …
ab+c abc, abbc, abbbc, …
ab?c ac, abc
a\sc a c

Character Classes

Char Class Description
. Matches any character except \n. If modified by the Singleline option, a period character matches any character. For more information, see Regular Expression Options.
[aeiou] Matches any single character included in the specified set of characters.
[^aeiou] Matches any single character not in the specified set of characters.
[0-9a-fA-F] Use of a hyphen (–) allows specification of contiguous character ranges.
\p{name} Matches any character in the named character class specified by {name}. Supported names are Unicode groups and block ranges. For example, Ll, Nd, Z, IsGreek, IsBoxDrawing.
\P{name} Matches text not included in groups and block ranges specified in {name}.
\w Matches any word character. Equivalent to the Unicode character categories
[\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Nd}\p{Pc}]. If ECMAScript-compliant behavior is specified with the ECMAScript option, \w is equivalent to [a-zA-Z_0-9].
\W Matches any nonword character. Equivalent to the Unicode categories [^\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Nd}\p{Pc}]. If ECMAScript-compliant behavior is specified with the ECMAScript option, \W is equivalent to [^a-zA-Z_0-9].
\s Matches any white-space character. Equivalent to the Unicode character categories [\f\n\r\t\v\x85\p{Z}]. If ECMAScript-compliant behavior is specified with the ECMAScript option, \s is equivalent to [ \f\n\r\t\v].
\S Matches any non-white-space character. Equivalent to the Unicode character categories [^\f\n\r\t\v\x85\p{Z}]. If ECMAScript-compliant behavior is specified with the ECMAScript option, \S is equivalent to [^ \f\n\r\t\v].
\d Matches any decimal digit. Equivalent to \p{Nd} for Unicode and [0-9] for non-Unicode, ECMAScript behavior.
\D Matches any nondigit. Equivalent to \P{Nd} for Unicode and [^0-9] for non-Unicode, ECMAScript behavior.

Was this article helpful?

Related Articles