细说字符串长度限制的那些坑

2025-04-30

本文深入探讨了字符串长度限制的复杂性。由于字符编码(UTF-8、UTF-16、Unicode码点、音素群)的不同,导致长度计算方法多样,容易造成前后端、数据库等不同层级的不一致,引发bug。作者建议使用Unicode码点计数并进行NFC规范化,虽然并非完美,但相对最佳。文章还探讨了音素群计数、UTF-8字节计数、UTF-16代码单元计数等方法的优缺点,并提供了混合计数方法的示例代码。