String matcher

type.matcher.StringMatcher

[type.matcher.StringMatcher proto]

Specifies the way to match a string.

{
  "exact": "...",
  "prefix": "...",
  "suffix": "...",
  "regex": "...",
  "safe_regex": "{...}",
  "ignore_case": "..."
}
exact

(string) The input string must match exactly the string specified here.

Examples:

  • abc only matches the value abc.

Precisely one of exact, prefix, suffix, regex, safe_regex must be set.

prefix

(string) The input string must have the prefix specified here. Note: empty prefix is not allowed, please use regex instead.

Examples:

  • abc matches the value abc.xyz

Precisely one of exact, prefix, suffix, regex, safe_regex must be set.

suffix

(string) The input string must have the suffix specified here. Note: empty prefix is not allowed, please use regex instead.

Examples:

  • abc matches the value xyz.abc

Precisely one of exact, prefix, suffix, regex, safe_regex must be set.

regex

(string) The input string must match the regular expression specified here. The regex grammar is defined here.

Examples:

  • The regex \d{3} matches the value 123

  • The regex \d{3} does not match the value 1234

  • The regex \d{3} does not match the value 123.456

Attention

This field has been deprecated in favor of safe_regex as it is not safe for use with untrusted input in all cases.

Precisely one of exact, prefix, suffix, regex, safe_regex must be set.

safe_regex

(type.matcher.RegexMatcher) The input string must match the regular expression specified here.

Precisely one of exact, prefix, suffix, regex, safe_regex must be set.

ignore_case

(bool) If true, indicates the exact/prefix/suffix matching should be case insensitive. This has no effect for the safe_regex match. For example, the matcher data will match both input string Data and data if set to true.

type.matcher.ListStringMatcher

[type.matcher.ListStringMatcher proto]

Specifies a list of ways to match a string.

{
  "patterns": []
}
patterns

(repeated type.matcher.StringMatcher, REQUIRED)