stripAccents 泰语

问题描述

我正在尝试使用 Scala 语言中的 stripAccent 函数从泰语单词中去除口音,似乎无法去除口音。

import org.apache.commons.lang3.StringUtils.stripAccents
println("stripped string " + stripAccents("CLEกอ่ตัRงขึนในปีR"))

stripped string CLEกอ่ตัRงขึนในปีR

我在 Intellij Windows 环境中运行。它正在剥离许多其他语言,如德语、荷兰语等。 有没有人遇到过类似的问题,你是怎么解决的?

解决方法

您可以使用 java Normalizer :

import java.text.Normalizer

val thaiString = "CLEกอ่ตัRงขึนในปีR"

val strippedString = Normalizer.normalize(thaiString,Normalizer.Form.NFD)
                    .replaceAll("[\\p{InCombiningDiacriticalMarks}\\p{IsM}]+","")

println(strippedString)
//CLEกอตRงขนในปR

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...