This is an automated email from the ASF dual-hosted git repository.
zclll pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris-website.git
The following commit(s) were added to refs/heads/master by this push:
new 2a59a282641 [doc](function)support regexp_count function (#2475)
2a59a282641 is described below
commit 2a59a28264192319e342274fed8c19867ff06f0c
Author: dwdwqfwe <[email protected]>
AuthorDate: Tue Jul 1 16:58:59 2025 +0800
[doc](function)support regexp_count function (#2475)
## Versions
- [x] dev
- [x] 3.0
- [ ] 2.1
- [ ] 2.0
## Languages
- [x] Chinese
- [x] English
## Docs Checklist
- [ ] Checked by AI
- [ ] Test Cases Built
---------
Co-authored-by: zclllyybb <[email protected]>
---
.../string-functions/regexp-count.md | 222 ++++++++++++++++++
.../string-functions/regexp-count.md | 219 ++++++++++++++++++
.../string-functions/regexp-count.md | 219 ++++++++++++++++++
sidebars.json | 250 ++++++++++-----------
.../string-functions/regexp-count.md | 222 ++++++++++++++++++
5 files changed, 1007 insertions(+), 125 deletions(-)
diff --git
a/docs/sql-manual/sql-functions/scalar-functions/string-functions/regexp-count.md
b/docs/sql-manual/sql-functions/scalar-functions/string-functions/regexp-count.md
new file mode 100644
index 00000000000..34355dbe744
--- /dev/null
+++
b/docs/sql-manual/sql-functions/scalar-functions/string-functions/regexp-count.md
@@ -0,0 +1,222 @@
+---
+{
+ "title": "REGEXP_COUNT",
+ "language": "en"
+}
+
+---
+
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+ http://www.apache.org/licenses/LICENSE-2.0
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+## Description
+This is a function to count the number of characters in a string that match a
given regular expression pattern. The input consists of a user-provided string
and a regular expression pattern. The return value is n the total count of
matching characters; if no matches are found, it returns 0.
+
+1. 'str' paratemer is 'string' type,it is the string of usr want to match by a
regexp expression.
+
+2. 'pattern' paratemer is 'string' type, it is the string of a regexp regular
which will be used to match the string;
+
+3. return value is 'int' type,it represent the number of the characters which
be matched successfully;
+
+
+
+## Syntax
+
+```sql
+REGEXP_COUNT(<str>, <pattern>)
+```
+
+## Parameters
+
+| Parameter | Description |
+| -- | -- |
+| `<str>` | The parameter is 'string' type,it is the dest value which matched
by the regexp expression |
+| `<pattern>` | The parameter is 'string' type, it is a regexp expression and
it is used to match the string which meet the regular of the pattern |
+## Return Value
+
+- Returns number of matches for a regular expression 'pattern' within a
'str',it is 'int',if no character can be matched, return 0;
+- 1. if pattern is NULL or str is NULL or both are NULL,return NULL;
+- 2. if pattern is not allowed regexp regular , it will throw error,it`s a
wrong for this action;
+
+## Examples
+
+### Test the string region matching against an expression containing escape
characters and return the result
+
+```sql
+SELECT regexp_count('a.b:c;d', '[\\\\.:;]');
+```
+
+```text
++--------------------------------------+
+| regexp_count('a.b:c;d', '[\\\\.:;]') |
++--------------------------------------+
+| 3 |
++--------------------------------------+
+```
+
+### Test the string matching result of the regular expression for the ordinary
character ':'.
+
+```sql
+SELECT regexp_count('a.b:c;d', ':');
+```
+
+```text
++------------------------------+
+| regexp_count('a.b:c;d', ':') |
++------------------------------+
+| 1 |
++------------------------------+
+```
+### Test the return result when matching a string against a regular expression
containing two square brackets.
+
+```sql
+SELECT regexp_count('Hello, World!', '[[:punct:]]');
+```
+
+```text
++----------------------------------------------+
+| regexp_count('Hello, World!', '[[:punct:]]') |
++----------------------------------------------+
+| 2 |
++----------------------------------------------+
+```
+
+
+### Test pattern is NULL case
+
+```sql
+SELECT regexp_count("abc",NULL);
+```
+```text
++------------------------+
+| regexp_count("abc",NULL) |
++------------------------+
+| NULL |
++------------------------+
+```
+
+
+### Test str is NULL case
+
+```sql
+SELECT regexp_count(NULL,"abc");
+```
+```text
++------------------------+
+| regexp_count(NULL,"abc") |
++------------------------+
+| NULL |
++------------------------+
+```
+
+### Test both are NULL
+
+
+```sql
+SELECT regexp_count(NULL,NULL);
+```
+```text
++------------------------+
+| regexp_count(NULL,NULL) |
++------------------------+
+| NULL |
++------------------------+
+```
+
+### Test the return result of inserting certain variable values and then
retrieving the variables from the stored rows for matching.
+
+```sql
+
+CREATE TABLE test_table_for_regexp_count (
+ id INT,
+ text_data VARCHAR(500),
+ pattern VARCHAR(100)
+ ) PROPERTIES ("replication_num"="1");
+
+INSERT INTO test_table_for_regexp_count VALUES
+ (1, 'HelloWorld', '[A-Z][a-z]+'),
+ (2, 'apple123', '[a-z]{5}[0-9]'),
+ (3, 'aabbcc', '(aa|bb|cc)'),
+ (4, '123-456-7890', '[0-9][0-9][0-9]'),
+ (5, 'test,data', ','),
+ (6, 'a1b2c3', '[a-z][0-9]'),
+ (7, 'book keeper', 'oo|ee'),
+ (8, 'ababab', '(ab)(ab)(ab)'),
+ (9, 'aabbcc', '(aa|bb|cc)'),
+ (10, 'apple,banana', '[aeiou][a-z]+');
+
+SELECT id, regexp_count(text_data, pattern) as count_result FROM
test_table_for_regexp_count ORDER BY id;
+
+```
+
+```text
++------+--------------+
+| id | count_result |
++------+--------------+
+| 1 | 2 |
+| 2 | 1 |
+| 3 | 3 |
+| 4 | 3 |
+| 5 | 1 |
+| 6 | 3 |
+| 7 | 2 |
+| 8 | 1 |
+| 9 | 3 |
+| 10 | 2 |
++------+--------------+
+
+```
+### Test the return result of inserting certain variable values, retrieving
the variables from stored rows for matching, with the regular expression being
a constant.
+
+```sql
+CREATE TABLE test_table_for_regexp_count (
+ id INT,
+ text_data VARCHAR(500),
+ pattern VARCHAR(100)
+ ) PROPERTIES ("replication_num"="1");
+
+INSERT INTO test_table_for_regexp_count VALUES
+ (1, 'HelloWorld', '[A-Z][a-z]+'),
+ (2, 'apple123', '[a-z]{5}[0-9]'),
+ (3, 'aabbcc', '(aa|bb|cc)'),
+ (4, '123-456-7890', '[0-9][0-9][0-9]'),
+ (5, 'test,data', ','),
+ (6, 'a1b2c3', '[a-z][0-9]'),
+ (7, 'book keeper', 'oo|ee'),
+ (8, 'ababab', '(ab)(ab)(ab)'),
+ (9, 'aabbcc', '(aa|bb|cc)'),
+ (10, 'apple,banana', '[aeiou][a-z]+');
+
+SELECT id, regexp_count(text_data, 'e') as count_e FROM
test_table_for_regexp_count WHERE text_data IS NOT NULL ORDER BY id;
+```
+
+```text
++------+---------+
+| id | count_e |
++------+---------+
+| 1 | 1 |
+| 2 | 1 |
+| 3 | 0 |
+| 4 | 0 |
+| 5 | 1 |
+| 6 | 0 |
+| 7 | 3 |
+| 8 | 0 |
+| 9 | 0 |
+| 10 | 1 |
++------+---------+
+```
\ No newline at end of file
diff --git
a/i18n/zh-CN/docusaurus-plugin-content-docs/current/sql-manual/sql-functions/scalar-functions/string-functions/regexp-count.md
b/i18n/zh-CN/docusaurus-plugin-content-docs/current/sql-manual/sql-functions/scalar-functions/string-functions/regexp-count.md
new file mode 100644
index 00000000000..0fc9871b9b4
--- /dev/null
+++
b/i18n/zh-CN/docusaurus-plugin-content-docs/current/sql-manual/sql-functions/scalar-functions/string-functions/regexp-count.md
@@ -0,0 +1,219 @@
+---
+{
+ "title": "REGEXP_COUNT",
+ "language": "zh-CN"
+}
+
+---
+
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+ http://www.apache.org/licenses/LICENSE-2.0
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+## 描述
+这是一个用于统计字符串中匹配给定正则表达式模式的字符数量的函数。输入包括用户提供的字符串和正则表达式模式。返回值为匹配字符的总数量;如果未找到匹配项,则返回
0。
+
+1. 'str' 参数为 “string” 类型,是用户希望通过正则表达式进行匹配的字符串。
+
+2. 'pattern' 参数为 “string” 类型,是用于匹配字符串的正则表达式模式字符串。
+
+3. 返回值为 “int” 类型,表示成功匹配的字符数量。
+
+
+
+## 语法
+
+```sql
+REGEXP_COUNT(<str>, <pattern>)
+```
+
+## 参数
+
+| 参数 | 描述 |
+| -- | -- |
+| `<str>` | 该参数为 “string” 类型,是通过正则表达式匹配得到的目标值。|
+| `<pattern>` |该参数为 “string” 类型,是一个正则表达式,用于匹配符合该模式规则的字符串。|
+
+## 返回值
+
+- 返回正则表达式 “pattern” 在字符串 “str” 中的匹配字符数量,返回类型为 “int”。若没有字符匹配,则返回 0。
+- 1. 如果'str' 或者 'parttern' 为NULL ,或者他们都为NULL,返回NULL;
+- 2. 如果 'pattern' 不符合正则表达式规则,则是错误的用法,抛出error;
+
+### 测试字符串区匹配包含转义字符的表达式返回结果
+
+```sql
+SELECT regexp_count('a.b:c;d', '[\\\\.:;]');
+```
+
+```text
++--------------------------------------+
+| regexp_count('a.b:c;d', '[\\\\.:;]') |
++--------------------------------------+
+| 3 |
++--------------------------------------+
+```
+
+### 测试普通的字符':'的正则表达式的字符串匹配结果
+```sql
+SELECT regexp_count('a.b:c;d', ':');
+```
+
+```text
++------------------------------+
+| regexp_count('a.b:c;d', ':') |
++------------------------------+
+| 1 |
++------------------------------+
+```
+### 测试字符串去匹配包含有两个中括号的正则表达式的返回结果
+
+```sql
+SELECT regexp_count('Hello, World!', '[[:punct:]]');
+```
+
+```text
++----------------------------------------------+
+| regexp_count('Hello, World!', '[[:punct:]]') |
++----------------------------------------------+
+| 2 |
++----------------------------------------------+
+```
+
+
+### 测试 'patter' 为 NULL值的情况
+
+```sql
+SELECT regexp_count("abc",NULL);
+```
+```text
++------------------------+
+| regexp_count("abc",NULL) |
++------------------------+
+| NULL |
++------------------------+
+```
+
+
+### 测试 'str' 为 NULL 值的情况
+
+```sql
+SELECT regexp_count(NULL,"abc");
+```
+```text
++------------------------+
+| regexp_count(NULL,"abc") |
++------------------------+
+| NULL |
++------------------------+
+```
+
+### 测试都为NULL值的情况
+
+
+```sql
+SELECT regexp_count(NULL,NULL);
+```
+```text
++------------------------+
+| regexp_count(NULL,NULL) |
++------------------------+
+| NULL |
++------------------------+
+```
+
+### 测试插入一定变量值,从存储行取出变量去匹配的返回结果
+
+```sql
+
+CREATE TABLE test_table_for_regexp_count (
+ id INT,
+ text_data VARCHAR(500),
+ pattern VARCHAR(100)
+ ) PROPERTIES ("replication_num"="1");
+
+INSERT INTO test_table_for_regexp_count VALUES
+ (1, 'HelloWorld', '[A-Z][a-z]+'),
+ (2, 'apple123', '[a-z]{5}[0-9]'),
+ (3, 'aabbcc', '(aa|bb|cc)'),
+ (4, '123-456-7890', '[0-9][0-9][0-9]'),
+ (5, 'test,data', ','),
+ (6, 'a1b2c3', '[a-z][0-9]'),
+ (7, 'book keeper', 'oo|ee'),
+ (8, 'ababab', '(ab)(ab)(ab)'),
+ (9, 'aabbcc', '(aa|bb|cc)'),
+ (10, 'apple,banana', '[aeiou][a-z]+');
+
+SELECT id, regexp_count(text_data, pattern) as count_result FROM
test_table_for_regexp_count ORDER BY id;
+
+```
+
+```text
++------+--------------+
+| id | count_result |
++------+--------------+
+| 1 | 2 |
+| 2 | 1 |
+| 3 | 3 |
+| 4 | 3 |
+| 5 | 1 |
+| 6 | 3 |
+| 7 | 2 |
+| 8 | 1 |
+| 9 | 3 |
+| 10 | 2 |
++------+--------------+
+
+```
+### 测试插入一定变量值,从存储行取出变量去匹配的返回结果,但正则表达式为常量
+
+```sql
+CREATE TABLE test_table_for_regexp_count (
+ id INT,
+ text_data VARCHAR(500),
+ pattern VARCHAR(100)
+ ) PROPERTIES ("replication_num"="1");
+
+INSERT INTO test_table_for_regexp_count VALUES
+ (1, 'HelloWorld', '[A-Z][a-z]+'),
+ (2, 'apple123', '[a-z]{5}[0-9]'),
+ (3, 'aabbcc', '(aa|bb|cc)'),
+ (4, '123-456-7890', '[0-9][0-9][0-9]'),
+ (5, 'test,data', ','),
+ (6, 'a1b2c3', '[a-z][0-9]'),
+ (7, 'book keeper', 'oo|ee'),
+ (8, 'ababab', '(ab)(ab)(ab)'),
+ (9, 'aabbcc', '(aa|bb|cc)'),
+ (10, 'apple,banana', '[aeiou][a-z]+');
+
+SELECT id, regexp_count(text_data, 'e') as count_e FROM
test_table_for_regexp_count WHERE text_data IS NOT NULL ORDER BY id;
+```
+
+```text
++------+---------+
+| id | count_e |
++------+---------+
+| 1 | 1 |
+| 2 | 1 |
+| 3 | 0 |
+| 4 | 0 |
+| 5 | 1 |
+| 6 | 0 |
+| 7 | 3 |
+| 8 | 0 |
+| 9 | 0 |
+| 10 | 1 |
++------+---------+
+```
\ No newline at end of file
diff --git
a/i18n/zh-CN/docusaurus-plugin-content-docs/version-3.0/sql-manual/sql-functions/scalar-functions/string-functions/regexp-count.md
b/i18n/zh-CN/docusaurus-plugin-content-docs/version-3.0/sql-manual/sql-functions/scalar-functions/string-functions/regexp-count.md
new file mode 100644
index 00000000000..0fc9871b9b4
--- /dev/null
+++
b/i18n/zh-CN/docusaurus-plugin-content-docs/version-3.0/sql-manual/sql-functions/scalar-functions/string-functions/regexp-count.md
@@ -0,0 +1,219 @@
+---
+{
+ "title": "REGEXP_COUNT",
+ "language": "zh-CN"
+}
+
+---
+
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+ http://www.apache.org/licenses/LICENSE-2.0
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+## 描述
+这是一个用于统计字符串中匹配给定正则表达式模式的字符数量的函数。输入包括用户提供的字符串和正则表达式模式。返回值为匹配字符的总数量;如果未找到匹配项,则返回
0。
+
+1. 'str' 参数为 “string” 类型,是用户希望通过正则表达式进行匹配的字符串。
+
+2. 'pattern' 参数为 “string” 类型,是用于匹配字符串的正则表达式模式字符串。
+
+3. 返回值为 “int” 类型,表示成功匹配的字符数量。
+
+
+
+## 语法
+
+```sql
+REGEXP_COUNT(<str>, <pattern>)
+```
+
+## 参数
+
+| 参数 | 描述 |
+| -- | -- |
+| `<str>` | 该参数为 “string” 类型,是通过正则表达式匹配得到的目标值。|
+| `<pattern>` |该参数为 “string” 类型,是一个正则表达式,用于匹配符合该模式规则的字符串。|
+
+## 返回值
+
+- 返回正则表达式 “pattern” 在字符串 “str” 中的匹配字符数量,返回类型为 “int”。若没有字符匹配,则返回 0。
+- 1. 如果'str' 或者 'parttern' 为NULL ,或者他们都为NULL,返回NULL;
+- 2. 如果 'pattern' 不符合正则表达式规则,则是错误的用法,抛出error;
+
+### 测试字符串区匹配包含转义字符的表达式返回结果
+
+```sql
+SELECT regexp_count('a.b:c;d', '[\\\\.:;]');
+```
+
+```text
++--------------------------------------+
+| regexp_count('a.b:c;d', '[\\\\.:;]') |
++--------------------------------------+
+| 3 |
++--------------------------------------+
+```
+
+### 测试普通的字符':'的正则表达式的字符串匹配结果
+```sql
+SELECT regexp_count('a.b:c;d', ':');
+```
+
+```text
++------------------------------+
+| regexp_count('a.b:c;d', ':') |
++------------------------------+
+| 1 |
++------------------------------+
+```
+### 测试字符串去匹配包含有两个中括号的正则表达式的返回结果
+
+```sql
+SELECT regexp_count('Hello, World!', '[[:punct:]]');
+```
+
+```text
++----------------------------------------------+
+| regexp_count('Hello, World!', '[[:punct:]]') |
++----------------------------------------------+
+| 2 |
++----------------------------------------------+
+```
+
+
+### 测试 'patter' 为 NULL值的情况
+
+```sql
+SELECT regexp_count("abc",NULL);
+```
+```text
++------------------------+
+| regexp_count("abc",NULL) |
++------------------------+
+| NULL |
++------------------------+
+```
+
+
+### 测试 'str' 为 NULL 值的情况
+
+```sql
+SELECT regexp_count(NULL,"abc");
+```
+```text
++------------------------+
+| regexp_count(NULL,"abc") |
++------------------------+
+| NULL |
++------------------------+
+```
+
+### 测试都为NULL值的情况
+
+
+```sql
+SELECT regexp_count(NULL,NULL);
+```
+```text
++------------------------+
+| regexp_count(NULL,NULL) |
++------------------------+
+| NULL |
++------------------------+
+```
+
+### 测试插入一定变量值,从存储行取出变量去匹配的返回结果
+
+```sql
+
+CREATE TABLE test_table_for_regexp_count (
+ id INT,
+ text_data VARCHAR(500),
+ pattern VARCHAR(100)
+ ) PROPERTIES ("replication_num"="1");
+
+INSERT INTO test_table_for_regexp_count VALUES
+ (1, 'HelloWorld', '[A-Z][a-z]+'),
+ (2, 'apple123', '[a-z]{5}[0-9]'),
+ (3, 'aabbcc', '(aa|bb|cc)'),
+ (4, '123-456-7890', '[0-9][0-9][0-9]'),
+ (5, 'test,data', ','),
+ (6, 'a1b2c3', '[a-z][0-9]'),
+ (7, 'book keeper', 'oo|ee'),
+ (8, 'ababab', '(ab)(ab)(ab)'),
+ (9, 'aabbcc', '(aa|bb|cc)'),
+ (10, 'apple,banana', '[aeiou][a-z]+');
+
+SELECT id, regexp_count(text_data, pattern) as count_result FROM
test_table_for_regexp_count ORDER BY id;
+
+```
+
+```text
++------+--------------+
+| id | count_result |
++------+--------------+
+| 1 | 2 |
+| 2 | 1 |
+| 3 | 3 |
+| 4 | 3 |
+| 5 | 1 |
+| 6 | 3 |
+| 7 | 2 |
+| 8 | 1 |
+| 9 | 3 |
+| 10 | 2 |
++------+--------------+
+
+```
+### 测试插入一定变量值,从存储行取出变量去匹配的返回结果,但正则表达式为常量
+
+```sql
+CREATE TABLE test_table_for_regexp_count (
+ id INT,
+ text_data VARCHAR(500),
+ pattern VARCHAR(100)
+ ) PROPERTIES ("replication_num"="1");
+
+INSERT INTO test_table_for_regexp_count VALUES
+ (1, 'HelloWorld', '[A-Z][a-z]+'),
+ (2, 'apple123', '[a-z]{5}[0-9]'),
+ (3, 'aabbcc', '(aa|bb|cc)'),
+ (4, '123-456-7890', '[0-9][0-9][0-9]'),
+ (5, 'test,data', ','),
+ (6, 'a1b2c3', '[a-z][0-9]'),
+ (7, 'book keeper', 'oo|ee'),
+ (8, 'ababab', '(ab)(ab)(ab)'),
+ (9, 'aabbcc', '(aa|bb|cc)'),
+ (10, 'apple,banana', '[aeiou][a-z]+');
+
+SELECT id, regexp_count(text_data, 'e') as count_e FROM
test_table_for_regexp_count WHERE text_data IS NOT NULL ORDER BY id;
+```
+
+```text
++------+---------+
+| id | count_e |
++------+---------+
+| 1 | 1 |
+| 2 | 1 |
+| 3 | 0 |
+| 4 | 0 |
+| 5 | 1 |
+| 6 | 0 |
+| 7 | 3 |
+| 8 | 0 |
+| 9 | 0 |
+| 10 | 1 |
++------+---------+
+```
\ No newline at end of file
diff --git a/sidebars.json b/sidebars.json
index 880476e5c4b..8a031dbc467 100644
--- a/sidebars.json
+++ b/sidebars.json
@@ -1125,86 +1125,87 @@
"type": "category",
"label": "String Functions",
"items": [
-
"sql-manual/sql-functions/scalar-functions/string-functions/auto-partition-name",
-
"sql-manual/sql-functions/scalar-functions/string-functions/to-base64",
-
"sql-manual/sql-functions/scalar-functions/string-functions/from-base64",
+
"sql-manual/sql-functions/scalar-functions/string-functions/append-trailing-char-if-absent",
"sql-manual/sql-functions/scalar-functions/string-functions/ascii",
-
"sql-manual/sql-functions/scalar-functions/string-functions/length",
-
"sql-manual/sql-functions/scalar-functions/string-functions/domain",
-
"sql-manual/sql-functions/scalar-functions/string-functions/domain-without-www",
-
"sql-manual/sql-functions/scalar-functions/string-functions/char-length",
-
"sql-manual/sql-functions/scalar-functions/string-functions/lpad",
-
"sql-manual/sql-functions/scalar-functions/string-functions/rpad",
-
"sql-manual/sql-functions/scalar-functions/string-functions/lcase",
-
"sql-manual/sql-functions/scalar-functions/string-functions/ucase",
-
"sql-manual/sql-functions/scalar-functions/string-functions/uncompress",
-
"sql-manual/sql-functions/scalar-functions/string-functions/initcap",
-
"sql-manual/sql-functions/scalar-functions/string-functions/repeat",
-
"sql-manual/sql-functions/scalar-functions/string-functions/reverse",
+
"sql-manual/sql-functions/scalar-functions/string-functions/auto-partition-name",
"sql-manual/sql-functions/scalar-functions/string-functions/char",
+
"sql-manual/sql-functions/scalar-functions/string-functions/char-length",
"sql-manual/sql-functions/scalar-functions/string-functions/concat",
-
"sql-manual/sql-functions/scalar-functions/string-functions/compress",
"sql-manual/sql-functions/scalar-functions/string-functions/concat-ws",
-
"sql-manual/sql-functions/scalar-functions/string-functions/substring",
+
"sql-manual/sql-functions/scalar-functions/string-functions/compress",
"sql-manual/sql-functions/scalar-functions/string-functions/count_substrings",
-
"sql-manual/sql-functions/scalar-functions/string-functions/sub-replace",
-
"sql-manual/sql-functions/scalar-functions/string-functions/append-trailing-char-if-absent",
+
"sql-manual/sql-functions/scalar-functions/string-functions/cut-to-first-significant-subdomain",
+
"sql-manual/sql-functions/scalar-functions/string-functions/digital-masking",
+
"sql-manual/sql-functions/scalar-functions/string-functions/domain",
+
"sql-manual/sql-functions/scalar-functions/string-functions/domain-without-www",
"sql-manual/sql-functions/scalar-functions/string-functions/ends-with",
-
"sql-manual/sql-functions/scalar-functions/string-functions/starts-with",
-
"sql-manual/sql-functions/scalar-functions/string-functions/trim",
-
"sql-manual/sql-functions/scalar-functions/string-functions/ltrim",
-
"sql-manual/sql-functions/scalar-functions/string-functions/rtrim",
-
"sql-manual/sql-functions/scalar-functions/string-functions/trim-in",
-
"sql-manual/sql-functions/scalar-functions/string-functions/ltrim-in",
-
"sql-manual/sql-functions/scalar-functions/string-functions/rtrim-in",
-
"sql-manual/sql-functions/scalar-functions/string-functions/hex",
-
"sql-manual/sql-functions/scalar-functions/string-functions/unhex",
"sql-manual/sql-functions/scalar-functions/string-functions/elt",
+
"sql-manual/sql-functions/scalar-functions/string-functions/extract-url-parameter",
+
"sql-manual/sql-functions/scalar-functions/string-functions/from-base64",
+
"sql-manual/sql-functions/scalar-functions/string-functions/find-in-set",
+
"sql-manual/sql-functions/scalar-functions/string-functions/first-significant-subdomain",
+
"sql-manual/sql-functions/scalar-functions/string-functions/format",
+
"sql-manual/sql-functions/scalar-functions/string-functions/format-number",
+
"sql-manual/sql-functions/scalar-functions/string-functions/hex",
+
"sql-manual/sql-functions/scalar-functions/string-functions/initcap",
"sql-manual/sql-functions/scalar-functions/string-functions/instr",
"sql-manual/sql-functions/scalar-functions/string-functions/int-to-uuid",
+
"sql-manual/sql-functions/scalar-functions/string-functions/lcase",
+
"sql-manual/sql-functions/scalar-functions/string-functions/length",
"sql-manual/sql-functions/scalar-functions/string-functions/locate",
+
"sql-manual/sql-functions/scalar-functions/string-functions/lpad",
+
"sql-manual/sql-functions/scalar-functions/string-functions/ltrim",
+
"sql-manual/sql-functions/scalar-functions/string-functions/ltrim-in",
+
"sql-manual/sql-functions/scalar-functions/string-functions/mask",
+
"sql-manual/sql-functions/scalar-functions/string-functions/mask-first-n",
+
"sql-manual/sql-functions/scalar-functions/string-functions/mask-last-n",
+
"sql-manual/sql-functions/scalar-functions/string-functions/multi-match-any",
+
"sql-manual/sql-functions/scalar-functions/string-functions/multi-search-all-positions",
+
"sql-manual/sql-functions/scalar-functions/string-functions/ngram-search",
"sql-manual/sql-functions/scalar-functions/string-functions/overlay",
-
"sql-manual/sql-functions/scalar-functions/string-functions/find-in-set",
+
"sql-manual/sql-functions/scalar-functions/string-functions/parse-data-size",
+
"sql-manual/sql-functions/scalar-functions/string-functions/parse-url",
+
"sql-manual/sql-functions/scalar-functions/string-functions/printf",
+
"sql-manual/sql-functions/scalar-functions/string-functions/protocol",
+
"sql-manual/sql-functions/scalar-functions/string-functions/quote",
+
"sql-manual/sql-functions/scalar-functions/string-functions/random_bytes",
+
"sql-manual/sql-functions/scalar-functions/string-functions/regexp",
+
"sql-manual/sql-functions/scalar-functions/string-functions/regexp-count",
+
"sql-manual/sql-functions/scalar-functions/string-functions/regexp-extract",
+
"sql-manual/sql-functions/scalar-functions/string-functions/regexp-extract-all",
+
"sql-manual/sql-functions/scalar-functions/string-functions/regexp-extract-or-null",
+
"sql-manual/sql-functions/scalar-functions/string-functions/regexp-replace",
+
"sql-manual/sql-functions/scalar-functions/string-functions/regexp-replace-one",
"sql-manual/sql-functions/scalar-functions/string-functions/replace",
"sql-manual/sql-functions/scalar-functions/string-functions/replace-empty",
+
"sql-manual/sql-functions/scalar-functions/string-functions/repeat",
+
"sql-manual/sql-functions/scalar-functions/string-functions/reverse",
+
"sql-manual/sql-functions/scalar-functions/string-functions/rpad",
+
"sql-manual/sql-functions/scalar-functions/string-functions/rtrim",
+
"sql-manual/sql-functions/scalar-functions/string-functions/rtrim-in",
"sql-manual/sql-functions/scalar-functions/string-functions/strleft",
"sql-manual/sql-functions/scalar-functions/string-functions/strright",
-
"sql-manual/sql-functions/scalar-functions/string-functions/split-part",
-
"sql-manual/sql-functions/scalar-functions/string-functions/split-by-string",
"sql-manual/sql-functions/scalar-functions/string-functions/split-by-regexp",
+
"sql-manual/sql-functions/scalar-functions/string-functions/split-by-string",
+
"sql-manual/sql-functions/scalar-functions/string-functions/split-part",
+
"sql-manual/sql-functions/scalar-functions/string-functions/space",
"sql-manual/sql-functions/scalar-functions/string-functions/strcmp",
+
"sql-manual/sql-functions/scalar-functions/string-functions/starts-with",
+
"sql-manual/sql-functions/scalar-functions/string-functions/sub-replace",
+
"sql-manual/sql-functions/scalar-functions/string-functions/substring",
"sql-manual/sql-functions/scalar-functions/string-functions/substring-index",
-
"sql-manual/sql-functions/scalar-functions/string-functions/ngram-search",
-
"sql-manual/sql-functions/scalar-functions/string-functions/parse-url",
-
"sql-manual/sql-functions/scalar-functions/string-functions/protocol",
-
"sql-manual/sql-functions/scalar-functions/string-functions/translate",
"sql-manual/sql-functions/scalar-functions/string-functions/tokenize",
-
"sql-manual/sql-functions/scalar-functions/string-functions/cut-to-first-significant-subdomain",
-
"sql-manual/sql-functions/scalar-functions/string-functions/first-significant-subdomain",
+
"sql-manual/sql-functions/scalar-functions/string-functions/trim",
+
"sql-manual/sql-functions/scalar-functions/string-functions/trim-in",
"sql-manual/sql-functions/scalar-functions/string-functions/top-level-domain",
-
"sql-manual/sql-functions/scalar-functions/string-functions/quote",
+
"sql-manual/sql-functions/scalar-functions/string-functions/to-base64",
+
"sql-manual/sql-functions/scalar-functions/string-functions/translate",
+
"sql-manual/sql-functions/scalar-functions/string-functions/uncompress",
+
"sql-manual/sql-functions/scalar-functions/string-functions/unhex",
+
"sql-manual/sql-functions/scalar-functions/string-functions/ucase",
"sql-manual/sql-functions/scalar-functions/string-functions/url-decode",
"sql-manual/sql-functions/scalar-functions/string-functions/url-encode",
-
"sql-manual/sql-functions/scalar-functions/string-functions/extract-url-parameter",
"sql-manual/sql-functions/scalar-functions/string-functions/uuid",
-
"sql-manual/sql-functions/scalar-functions/string-functions/space",
-
"sql-manual/sql-functions/scalar-functions/string-functions/random_bytes",
-
"sql-manual/sql-functions/scalar-functions/string-functions/multi-search-all-positions",
-
"sql-manual/sql-functions/scalar-functions/string-functions/multi-match-any",
-
"sql-manual/sql-functions/scalar-functions/string-functions/mask",
-
"sql-manual/sql-functions/scalar-functions/string-functions/mask-first-n",
-
"sql-manual/sql-functions/scalar-functions/string-functions/mask-last-n",
-
"sql-manual/sql-functions/scalar-functions/string-functions/regexp",
-
"sql-manual/sql-functions/scalar-functions/string-functions/regexp-extract",
-
"sql-manual/sql-functions/scalar-functions/string-functions/regexp-extract-all",
-
"sql-manual/sql-functions/scalar-functions/string-functions/regexp-extract-or-null",
-
"sql-manual/sql-functions/scalar-functions/string-functions/regexp-replace",
-
"sql-manual/sql-functions/scalar-functions/string-functions/regexp-replace-one",
-
"sql-manual/sql-functions/scalar-functions/string-functions/format",
-
"sql-manual/sql-functions/scalar-functions/string-functions/format-number",
-
"sql-manual/sql-functions/scalar-functions/string-functions/parse-data-size",
-
"sql-manual/sql-functions/scalar-functions/string-functions/digital-masking",
-
"sql-manual/sql-functions/scalar-functions/string-functions/printf",
"sql-manual/sql-functions/scalar-functions/string-functions/xpath-string"
]
},
@@ -1215,99 +1216,98 @@
"sql-manual/sql-functions/scalar-functions/date-time-functions/convert-tz",
"sql-manual/sql-functions/scalar-functions/date-time-functions/curdate",
"sql-manual/sql-functions/scalar-functions/date-time-functions/curtime",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/now",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/year",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/quarter",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/month",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/day",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/dayofyear",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/dayofweek",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/week",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/weekday",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/weekofyear",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/yearweek",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/dayname",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/monthname",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/hour",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/minute",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/second",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/from-days",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/last-day",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/to-monday",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/from-second",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/from-unixtime",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/from-iso8601-date",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/unix-timestamp",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/utc-timestamp",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/to-date",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/to-days",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/to-iso8601",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/time-to-sec",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/sec-to-time",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/extract",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/makedate",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/str-to-date",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/time",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/timediff",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/timestampadd",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/timestampdiff",
"sql-manual/sql-functions/scalar-functions/date-time-functions/date",
"sql-manual/sql-functions/scalar-functions/date-time-functions/date-add",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/date-ceil",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/date-floor",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/date-format",
"sql-manual/sql-functions/scalar-functions/date-time-functions/date-sub",
"sql-manual/sql-functions/scalar-functions/date-time-functions/date-trunc",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/date-format",
"sql-manual/sql-functions/scalar-functions/date-time-functions/datediff",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/date-floor",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/second-floor",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/minute-floor",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/hour-floor",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/day",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/day-ceil",
"sql-manual/sql-functions/scalar-functions/date-time-functions/day-floor",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/month-floor",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/year-floor",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/date-ceil",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/second-ceil",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/minute-ceil",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/dayname",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/dayofweek",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/dayofyear",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/extract",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/from-days",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/from-iso8601-date",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/from-microsecond",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/from-millisecond",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/from-second",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/from-unixtime",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/hour",
"sql-manual/sql-functions/scalar-functions/date-time-functions/hour-ceil",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/day-ceil",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/month-ceil",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/year-ceil",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/hour-floor",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/hours-add",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/hours-diff",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/hours-sub",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/last-day",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/makedate",
"sql-manual/sql-functions/scalar-functions/date-time-functions/microsecond",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/microsecond-timestamp",
"sql-manual/sql-functions/scalar-functions/date-time-functions/microseconds-add",
"sql-manual/sql-functions/scalar-functions/date-time-functions/microseconds-diff",
"sql-manual/sql-functions/scalar-functions/date-time-functions/microseconds-sub",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/millisecond-timestamp",
"sql-manual/sql-functions/scalar-functions/date-time-functions/milliseconds-add",
"sql-manual/sql-functions/scalar-functions/date-time-functions/milliseconds-diff",
"sql-manual/sql-functions/scalar-functions/date-time-functions/milliseconds-sub",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/from-microsecond",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/from-millisecond",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/from-second",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/millisecond-timestamp",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/microsecond-timestamp",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/timestamp",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/minute",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/minute-ceil",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/minute-floor",
"sql-manual/sql-functions/scalar-functions/date-time-functions/minutes-add",
"sql-manual/sql-functions/scalar-functions/date-time-functions/minutes-diff",
"sql-manual/sql-functions/scalar-functions/date-time-functions/minutes-sub",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/month",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/month-ceil",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/month-floor",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/monthname",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/months-add",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/months-between",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/months-diff",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/months-sub",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/now",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/next-day",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/quarter",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/quarters-add",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/quarters-sub",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/sec-to-time",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/second",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/second-ceil",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/second-floor",
"sql-manual/sql-functions/scalar-functions/date-time-functions/seconds-add",
"sql-manual/sql-functions/scalar-functions/date-time-functions/seconds-diff",
"sql-manual/sql-functions/scalar-functions/date-time-functions/seconds-sub",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/hours-add",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/hours-diff",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/hours-sub",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/str-to-date",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/timestamp",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/timestampadd",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/timestampdiff",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/time",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/timediff",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/time-to-sec",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/to-date",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/to-days",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/to-iso8601",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/to-monday",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/utc-timestamp",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/unix-timestamp",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/week",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/week-ceil",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/week-floor",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/weekday",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/weekofyear",
"sql-manual/sql-functions/scalar-functions/date-time-functions/weeks-add",
"sql-manual/sql-functions/scalar-functions/date-time-functions/weeks-diff",
"sql-manual/sql-functions/scalar-functions/date-time-functions/weeks-sub",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/week-ceil",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/week-floor",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/months-add",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/months-diff",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/months-sub",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/months-between",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/quarters-sub",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/quarters-add",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/year",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/year-ceil",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/year-floor",
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/yearweek",
"sql-manual/sql-functions/scalar-functions/date-time-functions/years-add",
"sql-manual/sql-functions/scalar-functions/date-time-functions/years-diff",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/years-sub",
-
"sql-manual/sql-functions/scalar-functions/date-time-functions/next-day"
+
"sql-manual/sql-functions/scalar-functions/date-time-functions/years-sub"
]
},
{
diff --git
a/versioned_docs/version-3.0/sql-manual/sql-functions/scalar-functions/string-functions/regexp-count.md
b/versioned_docs/version-3.0/sql-manual/sql-functions/scalar-functions/string-functions/regexp-count.md
new file mode 100644
index 00000000000..34355dbe744
--- /dev/null
+++
b/versioned_docs/version-3.0/sql-manual/sql-functions/scalar-functions/string-functions/regexp-count.md
@@ -0,0 +1,222 @@
+---
+{
+ "title": "REGEXP_COUNT",
+ "language": "en"
+}
+
+---
+
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+ http://www.apache.org/licenses/LICENSE-2.0
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+## Description
+This is a function to count the number of characters in a string that match a
given regular expression pattern. The input consists of a user-provided string
and a regular expression pattern. The return value is n the total count of
matching characters; if no matches are found, it returns 0.
+
+1. 'str' paratemer is 'string' type,it is the string of usr want to match by a
regexp expression.
+
+2. 'pattern' paratemer is 'string' type, it is the string of a regexp regular
which will be used to match the string;
+
+3. return value is 'int' type,it represent the number of the characters which
be matched successfully;
+
+
+
+## Syntax
+
+```sql
+REGEXP_COUNT(<str>, <pattern>)
+```
+
+## Parameters
+
+| Parameter | Description |
+| -- | -- |
+| `<str>` | The parameter is 'string' type,it is the dest value which matched
by the regexp expression |
+| `<pattern>` | The parameter is 'string' type, it is a regexp expression and
it is used to match the string which meet the regular of the pattern |
+## Return Value
+
+- Returns number of matches for a regular expression 'pattern' within a
'str',it is 'int',if no character can be matched, return 0;
+- 1. if pattern is NULL or str is NULL or both are NULL,return NULL;
+- 2. if pattern is not allowed regexp regular , it will throw error,it`s a
wrong for this action;
+
+## Examples
+
+### Test the string region matching against an expression containing escape
characters and return the result
+
+```sql
+SELECT regexp_count('a.b:c;d', '[\\\\.:;]');
+```
+
+```text
++--------------------------------------+
+| regexp_count('a.b:c;d', '[\\\\.:;]') |
++--------------------------------------+
+| 3 |
++--------------------------------------+
+```
+
+### Test the string matching result of the regular expression for the ordinary
character ':'.
+
+```sql
+SELECT regexp_count('a.b:c;d', ':');
+```
+
+```text
++------------------------------+
+| regexp_count('a.b:c;d', ':') |
++------------------------------+
+| 1 |
++------------------------------+
+```
+### Test the return result when matching a string against a regular expression
containing two square brackets.
+
+```sql
+SELECT regexp_count('Hello, World!', '[[:punct:]]');
+```
+
+```text
++----------------------------------------------+
+| regexp_count('Hello, World!', '[[:punct:]]') |
++----------------------------------------------+
+| 2 |
++----------------------------------------------+
+```
+
+
+### Test pattern is NULL case
+
+```sql
+SELECT regexp_count("abc",NULL);
+```
+```text
++------------------------+
+| regexp_count("abc",NULL) |
++------------------------+
+| NULL |
++------------------------+
+```
+
+
+### Test str is NULL case
+
+```sql
+SELECT regexp_count(NULL,"abc");
+```
+```text
++------------------------+
+| regexp_count(NULL,"abc") |
++------------------------+
+| NULL |
++------------------------+
+```
+
+### Test both are NULL
+
+
+```sql
+SELECT regexp_count(NULL,NULL);
+```
+```text
++------------------------+
+| regexp_count(NULL,NULL) |
++------------------------+
+| NULL |
++------------------------+
+```
+
+### Test the return result of inserting certain variable values and then
retrieving the variables from the stored rows for matching.
+
+```sql
+
+CREATE TABLE test_table_for_regexp_count (
+ id INT,
+ text_data VARCHAR(500),
+ pattern VARCHAR(100)
+ ) PROPERTIES ("replication_num"="1");
+
+INSERT INTO test_table_for_regexp_count VALUES
+ (1, 'HelloWorld', '[A-Z][a-z]+'),
+ (2, 'apple123', '[a-z]{5}[0-9]'),
+ (3, 'aabbcc', '(aa|bb|cc)'),
+ (4, '123-456-7890', '[0-9][0-9][0-9]'),
+ (5, 'test,data', ','),
+ (6, 'a1b2c3', '[a-z][0-9]'),
+ (7, 'book keeper', 'oo|ee'),
+ (8, 'ababab', '(ab)(ab)(ab)'),
+ (9, 'aabbcc', '(aa|bb|cc)'),
+ (10, 'apple,banana', '[aeiou][a-z]+');
+
+SELECT id, regexp_count(text_data, pattern) as count_result FROM
test_table_for_regexp_count ORDER BY id;
+
+```
+
+```text
++------+--------------+
+| id | count_result |
++------+--------------+
+| 1 | 2 |
+| 2 | 1 |
+| 3 | 3 |
+| 4 | 3 |
+| 5 | 1 |
+| 6 | 3 |
+| 7 | 2 |
+| 8 | 1 |
+| 9 | 3 |
+| 10 | 2 |
++------+--------------+
+
+```
+### Test the return result of inserting certain variable values, retrieving
the variables from stored rows for matching, with the regular expression being
a constant.
+
+```sql
+CREATE TABLE test_table_for_regexp_count (
+ id INT,
+ text_data VARCHAR(500),
+ pattern VARCHAR(100)
+ ) PROPERTIES ("replication_num"="1");
+
+INSERT INTO test_table_for_regexp_count VALUES
+ (1, 'HelloWorld', '[A-Z][a-z]+'),
+ (2, 'apple123', '[a-z]{5}[0-9]'),
+ (3, 'aabbcc', '(aa|bb|cc)'),
+ (4, '123-456-7890', '[0-9][0-9][0-9]'),
+ (5, 'test,data', ','),
+ (6, 'a1b2c3', '[a-z][0-9]'),
+ (7, 'book keeper', 'oo|ee'),
+ (8, 'ababab', '(ab)(ab)(ab)'),
+ (9, 'aabbcc', '(aa|bb|cc)'),
+ (10, 'apple,banana', '[aeiou][a-z]+');
+
+SELECT id, regexp_count(text_data, 'e') as count_e FROM
test_table_for_regexp_count WHERE text_data IS NOT NULL ORDER BY id;
+```
+
+```text
++------+---------+
+| id | count_e |
++------+---------+
+| 1 | 1 |
+| 2 | 1 |
+| 3 | 0 |
+| 4 | 0 |
+| 5 | 1 |
+| 6 | 0 |
+| 7 | 3 |
+| 8 | 0 |
+| 9 | 0 |
+| 10 | 1 |
++------+---------+
+```
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]