gpt4 book ai didi

regex - PL/pgSQL 中的正则表达式替换

转载 作者:行者123 更新时间:2023-11-29 13:07:30 26 4
gpt4 key购买 nike

如果我有以下输入(不包括引号):

"The ancestral   territorial      imperatives of the    trumpeter swan"

如何将所有多个空间折叠成一个空间,以便将输入转换为:

"The ancestral territorial imperatives of the trumpeter swan"

这将用于插入/更新的触发函数(已经修剪前导/尾随空格)。目前,如果输入包含多个相邻空格,它会引发异常,但我宁愿它在插入之前简单地将其转换为有效的内容。

什么是最好的方法?我似乎找不到 PL/pgSQL 的正则表达式替换函数。有一个 text_replace 函数,但这最多只能将两个空格折叠为一个(这意味着三个连续的空格将折叠为两个)。一遍又一遍地调用此函数并不理想。

最佳答案

PostgreSQL 有一个 REGEXP_REPLACE您应该能够使用的功能。

DECLARE
result VARCHAR2(255);
BEGIN
result := REGEXP_REPLACE(subject, $$ {2,}$$, $$ $$, 'g');
END;

关于regex - PL/pgSQL 中的正则表达式替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2756262/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com