检查变量是否包含 PostgreSQL 函数中的 x

Mat*_*att 1 regex postgresql sql-function

在 PostgreSQL 函数中,检查传入的变量是否包含特定字母的语法是什么?

传递给函数的变量是逗号分隔的字母列表,我想检查此列表是否包含字母 a 或 x。

我想代码看起来像这样:

-- var typically looks like 'a,b,c,x'
if (some way of stripping anything other than a and x from var) ~* [ax]
  -- Do something else
end if;
Run Code Online (Sandbox Code Playgroud)

我认为正则表达式是答案,我只是对语法不是 100% 确定。

谢谢!

Igo*_*nko 5

检查字符串是否包含子字符串或字母的最简单方法是

if ( var like '%x%')
  -- Do something else
end if;
Run Code Online (Sandbox Code Playgroud)

或者你可以使用你提到的正则表达式:

if ( var ~* 'x')
Run Code Online (Sandbox Code Playgroud)