gpt4 book ai didi

c++ - 逐个字符地遍历 Unicode 代码点

转载 作者:可可西里 更新时间:2023-11-01 18:37:13 25 4
gpt4 key购买 nike

我有一系列的 Unicode 代码点。我真正需要做的是将这些代码点作为一系列字符进行迭代,不是一系列代码点,并确定每个单独字符的属性,例如是一封信,随便什么。

例如,假设我正在编写一个支持 Unicode 的文本框,并且用户输入了一个不止一个代码点的 Unicode 字符——例如,“e with diacritic”。我知道这个特定字符也可以表示为一个代码点,并且可以标准化为该形式,但我认为在一般情况下这是不可能的。我怎么能实现退格?它显然不能只删除最后一个代码点,因为他们可能刚刚输入了多个代码点。

我如何迭代一堆 Unicode 代码点作为字符

编辑:ICU 提供的 Break Iterators 似乎正是我所需要的。但是,我没有使用 ICU,因此任何关于如何实现我自己的等效功能的引用都是可以接受的答案。

另一个编辑:事实证明 Windows API 确实提供了这个功能。 MSDN 不太擅长将所有字符串函数放在一个地方。 CharNext是我正在寻找的功能。

最佳答案

使用 ICU 库。

http://site.icu-project.org/

例如:

http://icu-project.org/apiref/icu4c/classUnicodeString.html#ae3ffb6e15396dff152cb459ce4008f90

是返回字符串中特定字符偏移处的字符的函数。

关于c++ - 逐个字符地遍历 Unicode 代码点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8281974/

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