Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Ruby string comparison and character encoding in irb

Tags:

ruby

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>

Example tried Gsub method:

<ap(&:text).map{|d| d.delete "'"}.map{|d| d.gsub("æ", "#844"}
irb(main):113:1> )
SyntaxError: (irb):112: syntax error, unexpected '}', expecting ')'
like image 892
Rails beginner Avatar asked Apr 10 '26 02:04

Rails beginner


1 Answers

Since your input strings seem to be UTF-8, the easiest solution is to run your irb session with the same encoding:

irb -EUTF-8

That should make string entry in the irb command prompt default to UTF-8.

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

like image 53
Casper Avatar answered Apr 11 '26 18:04

Casper



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!