📣
TiDB Cloud Premium 开放公测中。为企业级工作负载提供无限扩展、即时弹性伸缩和高级安全保障。此页面由 AI 自动翻译,英文原文请见此处。

REGEXP_INSTR



返回字符串 expr 中与模式 pat 指定的正则表达式匹配的子字符串的起始索引;如果没有匹配,则返回 0。如果 expr 或 pat 为 NULL,则返回值为 NULL。字符索引从 1 开始。

语法

REGEXP_INSTR(<expr>, <pat[, pos[, occurrence[, return_option[, match_type]]]]>)

参数

参数描述
expr要进行匹配的字符串 expr
pat正则表达式
pos可选。开始在 expr 中进行搜索的位置。如果省略,默认值为 1。
occurrence可选。要搜索第几次出现的匹配。如果省略,默认值为 1。
return_option可选。指定返回哪种类型的位置。如果该值为 0,REGEXP_INSTR() 返回匹配子字符串第一个字符的位置。如果该值为 1,REGEXP_INSTR() 返回匹配子字符串之后的位置。如果省略,默认值为 0。
match_type可选。一个字符串,用于指定如何执行匹配。其含义与 REGEXP_LIKE() 中的说明相同。

返回类型

返回一个数值类型的值。

示例

SELECT REGEXP_INSTR('dog cat dog', 'dog'); +------------------------------------+ | REGEXP_INSTR('dog cat dog', 'dog') | +------------------------------------+ | 1 | +------------------------------------+ SELECT REGEXP_INSTR('dog cat dog', 'dog', 2); +---------------------------------------+ | REGEXP_INSTR('dog cat dog', 'dog', 2) | +---------------------------------------+ | 9 | +---------------------------------------+ SELECT REGEXP_INSTR('aa aaa aaaa', 'a{2}'); +-------------------------------------+ | REGEXP_INSTR('aa aaa aaaa', 'a{2}') | +-------------------------------------+ | 1 | +-------------------------------------+ SELECT REGEXP_INSTR('aa aaa aaaa', 'a{4}'); +-------------------------------------+ | REGEXP_INSTR('aa aaa aaaa', 'a{4}') | +-------------------------------------+ | 8 | +-------------------------------------+

文档内容是否有帮助?