【问题标题】:REGEXP_REPLACE special characterREGEXP_REPLACE 特殊字符
【发布时间】:2017-09-29 22:03:28
【问题描述】:

我有 varchar lastname (Jovic),我需要将字母 c 替换为 ć

我尝试了 regexp_replace 但没有结果。有谁知道如何更换?

【问题讨论】:

  • 应该像regexp_replace('Jovic' , 'c', 'ć')一样简单
  • 嗨,你能展示一下你尝试过的东西吗?

标签: sql oracle


【解决方案1】:

只是做一个替换:

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|$)' );

【讨论】:

    【解决方案2】:
    select regexp_replace('Jovic' , 'c', 'ć') from dual;
    

    应该返回带有替换字符的名称。如果它没有请检查您的客户端应用程序操作系统的编码集,它可能无法显示这样的字符(我不敢相信)

    如果替换是指在您的数据库中替换它,请遵循 MT0 的建议

    【讨论】:

      猜你喜欢
      • 2015-01-16
      • 2015-06-19
      • 2021-03-31
      • 2020-04-25
      • 2015-12-09
      • 2016-11-09
      • 2014-11-03
      • 2021-07-21
      • 2016-06-07
      相关资源
      最近更新 更多