python– 更改包含重音符和本地字母的unicode字符串中的字母大小写

python– 更改包含重音符和本地字母的unicode字符串中的字母大小写,第1张

概述Python字符串和unicode对象具有以下用于字符串大小写转换的方法.>上()> lower()>标题()使用unicode字符串,我可以处理本地字母表中的几乎所有字符:test_str = u'ças şak ürt örkl' print test_str.upper() >> ÇAS ŞAK ÜRT ÖRKL 除了两个

Python字符串和unicode对象具有以下用于字符串大小写转换的方法.

>上()
> lower()
>标题()

使用unicode字符串,我可以处理本地字母表中的几乎所有字符:

test_str = u"ças şak ürt örkl"print test_str.upper()>> ÇAS ŞAK ÜRT ÖRKL

除了两个字母.由于我住在土耳其,我有典型的Turkish I problem.

在我当地的字母表中,我们有一封与我类似的字母İ,他们的案例转换必须如下

我→小写→ı

我→大写→İ

是的,它破坏了i – >的ASCII转换.因为我和我是两个单独的信件.

test_str = u"ik"print test_str.upper()>> IK  # Wrong! must be İKtest_str = u"IK"print test_str.lower()>> ik  # Wrong! must be ık

我怎么能克服这个?有没有办法使用python内置函数正确处理大小写转换?最佳答案Python目前不支持特定于语言环境的案例折叠,也不支持Unicode SpecialCasing.txt中的其他规则.如果您今天需要它,您可以从PyICU获得它们.

>>> unicode( icu.UnicodeString(u'IK').tolower(icu.Locale('TR')) )u'ık'

虽然如果你关心的只是土耳其语I,你可能更喜欢特殊情况. 总结

以上是内存溢出为你收集整理的python – 更改包含重音符和本地字母的unicode字符串中的字母大小写全部内容,希望文章能够帮你解决python – 更改包含重音符和本地字母的unicode字符串中的字母大小写所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1207861.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存