【发布时间】:2020-07-19 16:59:54
【问题描述】:
我必须用 DB2 中电子邮件 ID 中的 '@' 替换欧洲(特殊)字符。 字符- §、Ö、Ã、У、ί、Ξ、Þ
样本数据:- 电子邮件ID
adb@yu.com
ads§mnm.com
vbnÖss.com
ddУrr.com
weίsd.com
ftΞvg.com
我想要这样的输出:-
adb@yu.com
ads@mnm.com
vbn@ss.com
dd@rr.com
we@sd.com`
ft@vg.com
我试过这样- regexp_replace(emailid,'§|Ö|Ã|У|ί|Ξ|Þ','@') 但它不起作用,对于 У,ί,Ξ 这 3 个字符并且给出错误 regx_exp 无效。
您能帮我如何替换 DB2 中 emailid 列中的所有 3 个字符。
【问题讨论】:
-
您的 Db2 版本和平台是什么? following 在 Db2 11.1 上运行良好。
-
AS400,它不工作
-
它适用于我的 7.4。让您的管理员检查是否安装了 Unicode 国际组件 (ICU) 选项(这是先决条件)。如果仍然无法正常工作,请向 IBM 支持提出案例。
-
您可以使用更强大的解决方案,方法是提供要保留的字符的确切列表并使用 ^ 反转它:
regexp_replace(emailid,'[^a-zA-Z.]+','@')
标签: regex db2 ibm-midrange informatica db2-400