如何编写正则表达式来替换Teradata中字符串内的点和单个空格?

时间:2015-03-19 10:46:27

标签: regex teradata

我非常需要编写一个正则表达式来替换字符串中特定子字符串内的点或单个空格。假设我要解析的字符串类似于' AB.C $。 WFD.C - &#39!; 。现在,reg ex应该基本上将其转换为' ABC $。 WFD.C - &#39!;即如果一个空格和点位于AB和C之间或先于或继承它们,那么只有它们应该被替换。请帮帮我。

1 个答案:

答案 0 :(得分:2)

这个怎么样:

SELECT REGEXP_REPLACE('AB.C$. WFD.C!-', 'A(\.| )B', 'AB', 1, 0, 'c');

它将从输入字符串中的第1位开始删除AB之间的所有文字点和空格,并将替换所有次出现(0参数), 'c'表示区分大小写的匹配。

详细了解teradata regex syntax here