有一种更有效的方法可以删除字符串中的重音符号,而不必使用要替换的字符进行大阵列?从字符串中删除重音C
例如:
removeaccents("áèfoo")
输出:
aefoo
在ASCII表有没有口音
,我不知道如何做到这一点。提前致谢。 :)
有一种更有效的方法可以删除字符串中的重音符号,而不必使用要替换的字符进行大阵列?从字符串中删除重音C
例如:
removeaccents("áèfoo")
输出:
aefoo
在ASCII表有没有口音
,我不知道如何做到这一点。提前致谢。 :)
听起来就像你正在寻找unac()
。从手册页:
unac
is a C library that removes accents from characters, regardless of the character set (ISO-8859-15, ISO-CELTIC, KOI8-RU...) as long asiconv(3)
is able to convert it into UTF-16 (Unicode).
我找不到下载页面(我认为它的意思是here,但链接目前404ing)。
sudo apt-get install libunac1-dev
假设你正在使用gcc,一旦安装你需要添加-lunac
到您的编译器选项(告诉编译器与链接:如果你在Ubuntu,你可以得到它unac库)。
非常感谢。 :)我下载并安装了,但是当我尝试链接并编译时,出现以下错误:'/tmp/ccakGVl9.o:在函数'main'中: ILD.c :(.text + 0x651):未定义引用' unac_string” collect2:LD返回1个退出状态 '我的代码: '#包括
我在'gcc'上使用'-lunac'选项解决了问题,并将ISO-8859-1编码改为UTF-8编码,现在工作正常。非常感谢你:) – Jack 2012-03-14 21:02:02
不客气。我编辑它到答案:) – 2012-03-14 23:04:42
您可以始终使用if梯形图而不是转换表。 – 2012-03-14 03:11:10
任何想法什么编码的字符串将使用? – loganfsmyth 2012-03-14 03:12:41
可能的帮助问题:http://stackoverflow.com/questions/144761/how-to-remove-accents-and-tilde-in-ac-stdstring – chikuba 2012-03-14 06:09:58