簡體   English   中英

BQ function 將 caron 字符從字符串轉換為不帶 caron 的字符

[英]BQ function to transform caron character from a string to character without caron

我試圖擺脫卡隆字符 (č、ć、š、ž) 並將它們轉換為 c、c、s、z:

在此處輸入圖像描述

with my_table as (
    select 'abcčd sštuv' caron, 'abccd sstuv' no_caron union all
    select 'uvzž', 'uvzz' union all
    select 'ijkl cČd', 'ijkl cCd' union ALL
    select 'Ćdef', 'Cdef'
)
SELECT *
FROM my_table

我試圖擺脫他們

SELECT *,
    regexp_replace(caron, r'š', 's') as no_caron
FROM my_table

但我認為這是低效的。 我知道有一個選項可以按照此處所述在 function 上寫信,但我不知道如何在我的案例中使用它。

提前致謝!

在下面使用

SELECT *, regexp_replace(normalize(caron, NFD), r"\pM", '') output
FROM my_table      

如果應用於您問題中的樣本數據 - output 是

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM