Comparing strings in Ruby and character encoding in irb

Here is the error:

=> ["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>

An example tried the Gsub method:

<ap(&:text).map{|d| d.delete "'"}.map{|d| d.gsub("æ", "#844"}
irb(main):113:1> )
SyntaxError: (irb):112: syntax error, unexpected '}', expecting ')'
+3
source share
1 answer

Since your input lines seem to be UTF-8, the easiest solution is to start a session irbwith the same encoding:

irb -EUTF-8

This should write a line irbto the default command line of UTF-8.

Good Ruby 1.9 coding resource:
http://blog.grayproductions.net/articles/understanding_m17n

+4
source

All Articles