N1QL中的REGEXP_CONTAINS和REGEXP_LIKE有什么区别?

时间:2019-03-06 10:02:27

标签: couchbase n1ql

关于Couchbase文档

Java string to date conversion

我看到了:

REGEXP_CONTAINS(expression, pattern)
Returns True if the string value contains the regular expression pattern.

REGEXP_LIKE(expression, pattern)
Returns True if the string value contains the regular expression pattern.

此功能之间是否有区别,或者一个功能是另一个功能的别名?

1 个答案:

答案 0 :(得分:5)

REGEXP_LIKE()要求表达式完全匹配模式。 REGEXP_CONTAINS()的限制较少;表达式只需要包含与模式匹配的内容即可。

此查询说明了差异。请注意,要搜索的模式是该函数的 second 参数。

select REGEXP_CONTAINS("  foof  ", "foof") as contains, REGEXP_LIKE("  foof  ", "foof") as `like`

[
  {
    "contains": true,
    "like": false
  }
]