我使用什么来对两个UTF-8编码的子字符串执行不区分大小写的比较?基本上,我正在为UTF-8寻找strnicmp
函数。
答案 0 :(得分:2)
各种Unicode脚本中的案例转换规则非常困难,需要大型案例转换表。你自己无法做到这一点,你需要一个图书馆。 ICU就是其中之一。
答案 1 :(得分:1)
strcoll
应该能够识别区域设置,并且至少在它是区域设置的默认编码时才能正确处理UTF8。如果不是,我仍然不知道。像解决方法一样,你可以将多字节字符串转换为wchars(mbrtowc),然后使用wcscasecmp,遗憾的是它是一个GNU扩展,而不是标准库的一部分......不太可能有用。