gpt4 book ai didi

c++ - 如何在 C 或 C++ 中获得与 Java 中的 toLowerCase 或 Python 中的 string.lower() 相同的结果?

转载 作者:太空宇宙 更新时间:2023-11-04 08:57:51 27 4
gpt4 key购买 nike

我需要一个像 Java 中的 String.toLowerCase() 一样工作的 C 或 C++ 函数(或库)。

我知道我可以使用 tolower() 来表示英语,但我需要的是一个函数(或库)可以覆盖全局语言。 (实际上,它需要涵盖以下列出的 9 种语言。)

语言列表

DutchEnglishFrenchGermanItalianPortugueseRussianSpanishUkrainian

Add, These characters in the first line below are Input and the second line is expected result

LINE 1:

AÁÀÂÄĂĀÃÅÆBCĆČÇDEÉÈÊËĚĘFGHℏIÍÌÎÏJKLŁMNŃŇÑOÓÒÔÖÕØŒPQRŘSŚŠŞTŢUÚÙÛÜŪVWXYÝZŹŽΑΔΕΘΛΜΝΠΡΣΣΦΩАБВГҐДЕЁЄЖЗИЙІЇКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ

第 2 行:

aáàâäăāãåæbcćčçdeéèêëěęfghℏiíìîïjklłmnńňñoóòôöõøœpqrřsśšştţuúùûüūvwxyýzźžαδεθλμνπρσςφωабвгґдеёєжзийіїклмнопрстуфхцчшщъыьэюя

我验证了 Java toLowerCase() 和 Python string.lower() 的结果两者都是正确的。

有什么方法可以将 C 或 C++ 中的字母翻译成小写字母吗?

重要的是,这些字母是从编码为“UTF-8”的文件中读取的!

请帮帮我。我的英语不是很好,所以请尽量使用简单的英语。

最佳答案

我想您会在 Boost 库中找到您需要的东西 - 请参阅 http://www.boost.org/doc/libs/1_51_0/libs/locale/doc/html/conversions.html

引用自他们的网站:

Boost.Locale gives powerful tools for development of cross platform localized software - the software that talks to user in its language.

Provided Features:

Correct case conversion, case folding and normalization.
Collation (sorting), including support for 4 Unicode collation levels.
....

我希望你明白了。你需要的功能是

Boost::Locale::to_lower(yourUTF8String)

关于c++ - 如何在 C 或 C++ 中获得与 Java 中的 toLowerCase 或 Python 中的 string.lower() 相同的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16075021/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com