在尝试检测其中的某个字符串时,我刚遇到一个奇怪的问题。有人知道这是怎么回事吗?
(rdb:1) p magic_string
"Time Period"
(rdb:1) p magic_string.class
String
(rdb:1) p magic_string == "Time Period"
false
(rdb:1) p "Time Period".length
11
(rdb:1) p magic_string.length
14
(rdb:1) p magic_string[0].chr
"\357"
(rdb:1) p magic_string[1].chr
"\273"
(rdb:1) p magic_string[2].chr
"\277"
(rdb:1) p magic_string[3].chr
"T"
最佳答案
您的字符串开头包含3个字节(BOM),表示编码为UTF-8。
source