Ich habe die folgende Codezeile in meiner Ruby on Rails-App, die überprüft, ob die angegebene Zeichenfolge koreanische Zeichen enthält oder nicht:
%Vor%Es funktioniert perfekt in der Konsole, löst aber einen Syntaxfehler für die eigentliche App aus:
%Vor%Was vermisse ich und wie kann ich es zum Laufen bringen?
Dies ist ein Zeichencodierungsproblem, das Sie hinzufügen müssen:
%Vor%an den Anfang der Ruby-Datei, in der Sie diese Regex verwenden. Sie können wahrscheinlich jede Kodierung verwenden, die die von Ihnen verwendete Zeichenklasse anstelle von UTF-8 verwendet. Beachten Sie, dass in Ruby 2.0 UTF-8 jetzt der Standard ist, daher wird dies in Ruby 2.0 + nicht benötigt.
Dies wird als "magischer Kommentar" bezeichnet. Sie können und sollten mehr über Codierung in Ruby 1.9 lesen. Beachten Sie, dass die Codierung in Rails-Ansichten automatisch von config.encoding
(standardmäßig auf UTF-8 in config/application.rb
festgelegt) erfolgt.
Es hat wahrscheinlich in der Konsole funktioniert, weil Ihr Terminal bereits auf UTF-8 eingestellt ist.
Tags und Links ruby ruby-on-rails regex cjk