irb中的Ruby字符串比较和字符编码
这是错误:
=> ["Mænd med navnet Kim", "30.094", "29.946", "-148", "Kvinder med navnet Kim", "341", "345", "4", "Mænd med navnet Kim Hansen", "1.586", "1.573", "-13", "Kvin der med navnet Kim Hansen", "5", "5", "0", "Mænd og kvinder med efternavnet Hans en", "226.040", "223.478", "-2.562"] irb(main):094:0> irb(main):095:0* @tester.index("Mænd med navnet Kim") => nil irb(main):096:0> @tester.index("Kvinder med navnet Kim") => 4 irb(main):097:0> @tester.index("Mænd med navnet Kim Hansen") => nil irb(main):098:0> @tester.index("Kvinder med navnet Kim Hansen") => 12 irb(main):099:0> @tester.index("Mænd og kvinder med efternavnet Hansen") => nil irb(main):100:0>
示例尝试了Gsub方法:
) SyntaxError: (irb):112: syntax error, unexpected '}', expecting ')'
由于您的输入字符串似乎是UTF-8,因此最简单的解决方案是使用相同的编码运行您的irb
会话:
irb -EUTF-8
这应该使irb
命令提示符中的字符串条目默认为UTF-8。
Ruby 1.9编码的优秀资源:
http://blog.grayproductions.net/articles/understanding_m17n