STRPOS

strpos(str, substr [, instance])

功能

返回子串 substr 在字符串 str 中第一次出现(或第 instance 次出现)的位置。

参数

  • str: string 类型
  • substr: string 类型,要查找的子串
  • instance: int 类型(可选),指定要查找第几次出现,默认为 1

返回结果

  • int 类型,返回子串出现的位置(从 1 开始计数)
  • 如果未找到子串,返回 0
  • 如果任一参数为 NULL,返回 NULL
  • 如果 instance 小于等于 0,返回 0

举例

SELECT strpos('high', 'ig'); -- 结果:2

SELECT strpos('high', 'igx'); -- 结果:0

SELECT strpos('Quadratically', 'a'); -- 结果:3

SELECT strpos('abc/xyz/foo/bar', '/', 1); -- 结果:4

SELECT strpos('abc/xyz/foo/bar', '/', 2); -- 结果:8

SELECT strpos('abc/xyz/foo/bar', '/', 3); -- 结果:12

SELECT strpos('abc/xyz/foo/bar', '/', 4); -- 结果:0

SELECT strpos('信念,爱,希望', '爱'); -- 结果:4

SELECT strpos('信念,爱,希望', '希望'); -- 结果:6

SELECT strpos('', ''); -- 结果:1

SELECT strpos(null, ''); -- 结果:NULL

说明

  • 位置索引从 1 开始计数(而非 0)
  • 支持 Unicode 字符串
  • 当 instance 参数超过实际出现次数时返回 0
  • 空字符串作为 substr 参数时,如果 str 非空则返回 1;如果 str 和 substr 都为空,也返回 1。
联系我们
预约咨询
微信咨询
电话咨询
邮件咨询