用于删除字符串中的 accents/diacritics 的 BigQuery UDF
BigQuery UDF to remove accents/diacritics in a string
使用此 javascript 代码,我们可以删除字符串中的 accents/diacritics。
var originalText = "éàçèñ"
var result = originalText.normalize('NFD').replace(/[\u0300-\u036f]/g, "")
console.log(result) // eacen
如果我们创建一个 BigQuery UDF,它不会(即使使用双 \)。
CREATE OR REPLACE FUNCTION project.remove_accent(x STRING)
RETURNS STRING
LANGUAGE js AS """
return x.normalize("NFD").replace(/[\u0300-\u036f]/g, "");
""";
SELECT project.remove_accent("éàçèñ") --"éàçèñ"
对此有什么想法吗?
考虑以下方法
select originalText,
regexp_replace(normalize(originalText, NFD), r"\pM", '') output
如果应用于您问题中的示例数据 - 输出为
如果你愿意,你可以很容易地用 SQL UDF 包装它
使用此 javascript 代码,我们可以删除字符串中的 accents/diacritics。
var originalText = "éàçèñ"
var result = originalText.normalize('NFD').replace(/[\u0300-\u036f]/g, "")
console.log(result) // eacen
如果我们创建一个 BigQuery UDF,它不会(即使使用双 \)。
CREATE OR REPLACE FUNCTION project.remove_accent(x STRING)
RETURNS STRING
LANGUAGE js AS """
return x.normalize("NFD").replace(/[\u0300-\u036f]/g, "");
""";
SELECT project.remove_accent("éàçèñ") --"éàçèñ"
对此有什么想法吗?
考虑以下方法
select originalText,
regexp_replace(normalize(originalText, NFD), r"\pM", '') output
如果应用于您问题中的示例数据 - 输出为
如果你愿意,你可以很容易地用 SQL UDF 包装它