gpt4 book ai didi

ios - 如果字符是 4 字节长度的 UTF8,[NSString substringWithRange] 中存在错误?

转载 作者:行者123 更新时间:2023-11-29 01:09:36 26 4
gpt4 key购买 nike

我必须检查给定 NSString 中的每个字符是否符合某种条件。

当字符串包含以 4 个字节(UTF-8 编码)表示的字符时,结果不是我期望的字符。

NSString* oneCharString = [@"𝄞" substringWithRange:NSMakeRange(0, 1)];

调试器显示:

enter image description here

它看起来像一个空字符串。但检查显示了一些值(也许是非字符的符号?)。

最佳答案

如果你想得到一个字符串的第一个字符,你需要这样做:

NSString *str = ... // the string such as @"𝄞"
NSRange firstRange = [str rangeOfComposedCharacterSequenceAtIndex:0];
NSString *oneCharString = [str substringFromRange:firstRange];

此代码正确处理组合字符。

关于ios - 如果字符是 4 字节长度的 UTF8,[NSString substringWithRange] 中存在错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35921579/

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