Учитывая строку в Ruby 1.8.7 (без замечательного механизма регулярных выражений Oniguruma, который поддерживает свойства Unicode с \ p {}), Я хотел бы иметь возможность определить, содержит ли строка один или несколько китайских, японских или корейских символов; то есть
class String
def contains_cjk?
...
end
end
>> '日本語'.contains_cjk?
=> true
>> '광고 프로그램'.contains_cjk?
=> true
>> '艾弗森将退出篮坛'.contains_cjk?
=> true
>> 'Watashi ha bakana gaijin desu.'.contains_cjk?
=> false
Я подозреваю, что это будет сводиться к проверке наличия каких-либо символов в строке в Unihan CJKV Unicode-блоках , но я решил, что стоит спросить, знает ли кто-нибудь о существующем решении в Рубин.