Potrzebuję zakodować/przekonwertować ciąg znaków Unicode na jego formularz ze znakiem ucieczki, z odwrotnymi ukośnikami. Ktoś wie jak?Jak mogę uniknąć łańcucha znaków Unicode za pomocą Ruby?
Odpowiedz
W Ruby 1.8.x, sprawdzanie ciągu # może być tym, czego szukasz, np.
>> multi_byte_str = "hello\330\271!"
=> "hello\330\271!"
>> multi_byte_str.inspect
=> "\"hello\\330\\271!\""
>> puts multi_byte_str.inspect
"hello\330\271!"
=> nil
W Ruby 1.9, jeśli chcesz znaków wielo-bajtowych, aby ich składowe bajtów uciekł, może chcesz powiedzieć coś w stylu:
>> multi_byte_str.bytes.to_a.map(&:chr).join.inspect
=> "\"hello\\xD8\\xB9!\""
Zarówno Ruby 1.8 i 1.9, jeśli zamiast zainteresowany w (uciekł) punktów kodowych Unicode, można to zrobić (choć ucieka druku rzeczy też):
>> multi_byte_str.unpack('U*').map{ |i| "\\u" + i.to_s(16).rjust(4, '0') }.join
=> "\\u0068\\u0065\\u006c\\u006c\\u006f\\u0639\\u0021"
To było super pomocne! Już miałem to napisać, a to zaoszczędziło mi czasu, eleganckiej kompozycji. Użyłem tego do zakodowania wskazówek dla małego tutoriala CSS, który napisałem na Codepen, więc nie są widoczne dla użytkownika dopóki nie zostaną sparsowane do JSON! Sprawdź to! http://cdpn.io/oznaH –
Aby użyć znaku Unicode w Ruby, użyj wyjścia "\ uXXXX"; gdzie XXXX jest punktem kodowym UTF-16. zobacz http://leejava.wordpress.com/2009/03/11/unicode-escape-in-ruby/
Dla Ruby 1.8 można użyć '[" XXXX ".to_i (16)] pack (" U * ")' – Dave
Jeśli Szyny kopanie wokół można użyć do tego kodera JSON:
require 'active_support'
x = ActiveSupport::JSON.encode('µ')
# x is now "\u00b5"
Zwykły koder JSON nie-Railsowy nie "\ u" - nie koduje Unicode.
naprawdę dobre rozwiązanie !!!!!! bardzo dziękuję! –
Możesz bezpośrednio używać znaków Unicode, dodając po prostu #Encoding: UTF-8
do górnej części pliku. Następnie możesz swobodnie używać ä, ǹ, ú i tak dalej w swoim kodzie źródłowym.
Wypróbuj ten klejnot. Konwertuje unikody i nie ASCII znaki interpunkcyjne i symbole do najbliższego ASCII znaków i symboli
https://github.com/qwuen/punctuate
przykład użycia. "100%" przerwać => "100%"
gem używa odniesienie do konwersji w postaci https://lexsrv3.nlm.nih.gov/LexSysGroup/Projects/lvg/current/docs/designDoc/UDF/unicode/DefaultTables/symbolTable.html.
To jest twoje własne repozytorium (lub takie, do którego jesteś głównym uczestnikiem). Którego nie ujawniłeś. Więc w zasadzie to spam. I nie odpowiada na pytanie. –
- 1. Dopasowywanie dokładnego łańcucha znaków za pomocą JavaScriptu
- 2. Jak wyświetlić Unicode za pomocą FLTK?
- 3. Jak mogę uniknąć # {z interpolacji ciągów znaków
- 4. Jak mogę uniknąć znaków specjalnych w MySQL?
- 5. Podział łańcucha na parę znaków w Ruby
- 6. Jak używać znaków Unicode w ciągu Pythona
- 7. Usuwanie modyfikatorów znaków Unicode
- 8. jak sformatować ciąg znaków za pomocą% w ruby?
- 9. Czy mogę uniknąć znaków w nazwach zmiennych?
- 10. Jak zachować separatory podczas dzielenia łańcucha znaków Ruby?
- 11. Jak mogę uniknąć znaku 0x1F Unicode w xml?
- 12. Jak mogę wyszukiwać wiersze w datatable za pomocą łańcucha wyszukiwania?
- 13. Drukowanie znaków Unicode PHP
- 14. Znajdowanie nazwy znaków Unicode za pomocą kodu Javascript
- 15. Nie dziel słowa podwójnego cytowania za pomocą łańcucha znaków Python()?
- 16. Jak wydrukować Unicode za pomocą programu NCurses?
- 17. Jak można uniknąć znaków w ciągu Delphi
- 18. Jak nakładać i wyrównywać ciągi znaków Unicode za pomocą znaków specjalnych w pythonie?
- 19. Ruby: Sprawdzanie szerokości wschodnioazjatyckiej (Unicode)
- 20. Metoda łańcucha znaków Ormlite?
- 21. Jak uniknąć interpolacji ciągów ruby?
- 22. Jak zapobiegać internowaniu łańcucha znaków?
- 23. Zmienność łańcucha ruby
- 24. Unicode za pomocą CSS: przed
- 25. Jak zamienić klejnot Unicode na Ruby 1.9?
- 26. Ruby: Fuzzowanie wszystkich znaków Unicode (kodowanie UTF/kodowanie/ciąg)
- 27. Lista znaków alfabetu Unicode
- 28. Jak dołączyć "do łańcucha znaków
- 29. Ruby: Wyodrębnianie słów z łańcucha
- 30. Jak mogę uruchomić metodę zgłaszania błędu za pomocą Ruby MiniTest?
Jakie kodowanie Unicode? UTF-8? – Kelvin