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

How to write a regular expression to replace dots and single spaces inside of a string in Teradata?

我非常需要编写一个正则表达式来替换字符串中特定子字符串中的点或单个 space。假设我要解析的字符串类似于 'AB.C$. WFD.C!-' 。现在 reg ex 基本上应该将其转换为 'ABC$. WFD.C!-' 即如果 space 和点出现在 AB 和 C 之间或者它们之前或之后,那么只应该替换它们。请帮助我完成。

这个怎么样:

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

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

阅读有关 teradata regex syntax here 的更多信息。