Pis*_*3.0 22
这似乎有点相关.为简化起见,有几种方法可以在Unicode(因此是UTF8)中获取相同的文本:例如,this:?可以写成一个字符?或两个字符:r和组合 ?.
您最好的选择是normalizer类 - 将两个字符串规范化为相同的规范化形式并比较结果.
在其中一条注释中,您将显示字符串的这些十六进制表示:
4d696e61205469646967617265 20 616e7374 c3a4 6c6c6e696e676172 // from XML
4d696e61205469646967617265 c2a0 616e7374 61cc88 6c6c6e696e676172 // typed
^^-----------------^^^^1 ^^^^^^2
Run Code Online (Sandbox Code Playgroud)
注意我标记的部分,显然这个问题有两个部分.
首先,观察字节序列"c2a0"含义的这个问题 - 由于某种原因,您的输入被转换为XML文件具有正常空间的不可破坏空间.请注意,在"Mina"之后的两种情况下都有正常的空间.不知道该怎么做是在PHP中,除了与正常空间,以取代所有空格.
至于第二个,即我上面概述的情况下:c3a4是ä(U + 00E4"带分音符的拉丁小写字母A" -一个字符,两个字节),而61是a(U + 0061"拉丁小写字母A" -一个字符,一个字节)cc88并将是组合变音符号"(U + 0308"COMBINING DIAERESIS" - 两个字符,三个字节).这里,规范化库应该是有用的.
| 归档时间: |
|
| 查看次数: |
4590 次 |
| 最近记录: |