【发布时间】:2017-09-29 22:03:28
【问题描述】:
我有 varchar lastname (Jovic),我需要将字母 c 替换为 ć。
我尝试了 regexp_replace 但没有结果。有谁知道如何更换?
【问题讨论】:
-
应该像
regexp_replace('Jovic' , 'c', 'ć')一样简单 -
嗨,你能展示一下你尝试过的东西吗?
我有 varchar lastname (Jovic),我需要将字母 c 替换为 ć。
我尝试了 regexp_replace 但没有结果。有谁知道如何更换?
【问题讨论】:
regexp_replace('Jovic' , 'c', 'ć')一样简单
只是做一个替换:
UPDATE your_table
SET lastname = 'Jović'
WHERE lastname = 'Jovic';
如果您需要替换多个名称中的单词,则:
UPDATE your_table
SET lastname = REGEXP_REPLACE( lastname, '(^|\W)Jovic(\W|$)', '\1Jović\2' )
WHERE REGEXP_LIKE( lastname, '(^|\W)Jovic(\W|$)' );
【讨论】:
select regexp_replace('Jovic' , 'c', 'ć') from dual;
应该返回带有替换字符的名称。如果它没有请检查您的客户端应用程序操作系统的编码集,它可能无法显示这样的字符(我不敢相信)
如果替换是指在您的数据库中替换它,请遵循 MT0 的建议
【讨论】: