📜  PostgreSQL – REGEXP_REPLACE函数

📅  最后修改于: 2022-05-13 01:57:15.930000             🧑  作者: Mango

PostgreSQL – REGEXP_REPLACE函数

PostgreSQL REGEXP_REPLACE()函数用于用新的子字符串替换与POSIX 正则表达式匹配的子字符串。

Syntax: REGEXP_REPLACE(source, pattern, replacement_string, [, flags])

我们来分析一下上面的语法:

  • 源是执行搜索和替换操作的字符串。
  • 该模式是用于匹配要替换的子字符串的 POSIX 正则表达式。
  • 所述replacement_string是一个字符串,它取代了使用匹配正则表达式模式的子串。
  • flags参数被用来控制用于匹配的字符的函数的行为。
  • PostgreSQL REGEXP_REPLACE()函数返回用子字符串替换原始字符串后的最终字符串。

示例 1:

例如,假设您有以下格式的人名:

first_name last_name

并且您想按如下方式重新排列名称:



last_name, first_name

为此,您可以使用REGEXP_REPLACE()函数,如下所示:

SELECT REGEXP_REPLACE('Raju Kumar', '(.*) (.*)', '\2, \1');

输出:

示例 2:

假设您有字符串形式的数据。该字符串与字母和数字混合,如下所示:

ABC12345xyz

以下查询从源字符串删除所有字母,例如 A、B、C 等:

SELECT REGEXP_REPLACE('ABC12345xyz', '[[:alpha:]]', '', 'g');

输出: