如何用非重音字符替换 clickhouse 中数组中每个单词的每个重音字符?
How replace each accented characters with non-accented characters foreach word in array in clickhouse?
我有一个单词数组,['camión'、'elástico'、'Árbol'],我想用非重音字符替换重音字符数组中每个单词的字符 (['camion', 'elastico', 'Arbol'])
我正在搜索一些这样的
SELECT arrayMap(x -> replaceRegexpAll(x, ['á', 'é', 'í', 'ó', 'ú'], ['a', 'e', 'i', 'o', 'u']), ['camión', 'elástico', 'Árbol']) AS word
我想要这个结果:
['camion', 'elastico', 'arbol']
将每个字符的重音替换为无重音,但这不起作用...
解决问题有什么想法吗?
谢谢
SELECT arrayMap(x -> arrayStringConcat(
arrayMap(y -> if((indexOf(['á', 'é', 'í', 'ó', 'ú'],y) as i) = 0, y, ['a', 'e', 'i', 'o', 'u'][i] ), extractAll(x,'.'))),
['camión', 'elástico', 'Árbol']) r
┌─r─────────────────────────────┐
│ ['camion','elastico','Árbol'] │
└───────────────────────────────┘
我有一个单词数组,['camión'、'elástico'、'Árbol'],我想用非重音字符替换重音字符数组中每个单词的字符 (['camion', 'elastico', 'Arbol'])
我正在搜索一些这样的
SELECT arrayMap(x -> replaceRegexpAll(x, ['á', 'é', 'í', 'ó', 'ú'], ['a', 'e', 'i', 'o', 'u']), ['camión', 'elástico', 'Árbol']) AS word
我想要这个结果:
['camion', 'elastico', 'arbol']
将每个字符的重音替换为无重音,但这不起作用...
解决问题有什么想法吗?
谢谢
SELECT arrayMap(x -> arrayStringConcat(
arrayMap(y -> if((indexOf(['á', 'é', 'í', 'ó', 'ú'],y) as i) = 0, y, ['a', 'e', 'i', 'o', 'u'][i] ), extractAll(x,'.'))),
['camión', 'elástico', 'Árbol']) r
┌─r─────────────────────────────┐
│ ['camion','elastico','Árbol'] │
└───────────────────────────────┘