REGEXMATCH - Cosmos DB 中的查询语言

REGEXMATCH 函数返回一个布尔值,该值指示提供的字符串是否与指定的正则表达式匹配。 正则表达式是一种简洁灵活的表示法,用于查找文本模式。

提供正则表达式功能的 Azure Cosmos DB for NoSQL 系统函数。

Syntax

REGEXMATCH(<string_expr_1>, <string_expr_2>[, <string_expr_3>])

Arguments

Description
string_expr_1 要搜索的字符串表达式。
string_expr_2 一个字符串表达式,其正则表达式定义为在搜索 string_expr_1时使用。
string_expr_3 一个可选字符串表达式,其中包含要与正则表达式一起使用的选定修饰符(string_expr_2)。 如果未提供,则默认值为运行正则表达式匹配项,而不使用修饰符。

返回类型

返回布尔表达式。

例子

本部分包含有关如何使用此查询语言构造的示例。

正则表达式与修饰符匹配

在此示例中,该 REGEXMATCH 函数用于匹配各种模式和修饰符。

SELECT VALUE {
  noModifiers: REGEXMATCH("abcd", "ABC"),
  caseInsensitive: REGEXMATCH("abcd", "ABC", "i"),
  wildcardCharacter: REGEXMATCH("abcd", "ab.", ""),
  ignoreWhiteSpace: REGEXMATCH("abcd", "ab c", "x"),
  caseInsensitiveAndIgnoreWhiteSpace: REGEXMATCH("abcd", "aB c", "ix"),
  containNumberBetweenZeroAndNine: REGEXMATCH("03a", "[0-9]"),
  containPrefix: REGEXMATCH("salt3824908", "salt{1}"),
  containsFiveLetterWordStartingWithS: REGEXMATCH("shame", "s....", "i")
}
[
  {
    "noModifiers": false,
    "caseInsensitive": true,
    "wildcardCharacter": true,
    "ignoreWhiteSpace": true,
    "caseInsensitiveAndIgnoreWhiteSpace": true,
    "containNumberBetweenZeroAndNine": true,
    "containPrefix": true,
    "containsFiveLetterWordStartingWithS": true
  }
]

注解

  • 此函数受益于范围索引的使用。 有关详细信息,请参阅 范围索引