module Kconv
Kanji Converter for Ruby.
Constants
Public Class Methods
Guess input encoding by NKF.guess
# File ext/nkf/lib/kconv.rb, line 140 def guess(str) ::NKF::guess(str) end
Returns whether input encoding is EUC-JP or not.
Note don't expect this return value is MatchData.
# File ext/nkf/lib/kconv.rb, line 155 def iseuc(str) str.dup.force_encoding(EUC).valid_encoding? end
Returns whether input encoding is ISO-2022-JP or not.
# File ext/nkf/lib/kconv.rb, line 173 def isjis(str) /\A [\t\n\r\x20-\x7E]* (?: (?:\x1b \x28 I [\x21-\x7E]* |\x1b \x28 J [\x21-\x7E]* |\x1b \x24 @ (?:[\x21-\x7E]{2})* |\x1b \x24 B (?:[\x21-\x7E]{2})* |\x1b \x24 \x28 D (?:[\x21-\x7E]{2})* )* \x1b \x28 B [\t\n\r\x20-\x7E]* )* \z/nox =~ str.dup.force_encoding('BINARY') ? true : false end
Returns whether input encoding is Shift_JIS or not.
# File ext/nkf/lib/kconv.rb, line 164 def issjis(str) str.dup.force_encoding(SJIS).valid_encoding? end
Returns whether input encoding is UTF-8 or not.
# File ext/nkf/lib/kconv.rb, line 192 def isutf8(str) str.dup.force_encoding(UTF8).valid_encoding? end
Convert str
to EUC-JP
# File ext/nkf/lib/kconv.rb, line 82 def toeuc(str) kconv(str, EUC) end
Convert str
to ISO-2022-JP
# File ext/nkf/lib/kconv.rb, line 73 def tojis(str) kconv(str, JIS) end
Convert self
to locale encoding
# File ext/nkf/lib/kconv.rb, line 127 def tolocale(str) kconv(str, Encoding.locale_charmap) end
Convert str
to Shift_JIS
# File ext/nkf/lib/kconv.rb, line 91 def tosjis(str) kconv(str, SJIS) end
Convert str
to UTF-16
# File ext/nkf/lib/kconv.rb, line 109 def toutf16(str) kconv(str, UTF16) end
Convert str
to UTF-32
# File ext/nkf/lib/kconv.rb, line 118 def toutf32(str) kconv(str, UTF32) end
Convert str
to UTF-8
# File ext/nkf/lib/kconv.rb, line 100 def toutf8(str) kconv(str, UTF8) end
Private Instance Methods
Guess input encoding by NKF.guess
# File ext/nkf/lib/kconv.rb, line 140 def guess(str) ::NKF::guess(str) end
Returns whether input encoding is EUC-JP or not.
Note don't expect this return value is MatchData.
# File ext/nkf/lib/kconv.rb, line 155 def iseuc(str) str.dup.force_encoding(EUC).valid_encoding? end
Returns whether input encoding is ISO-2022-JP or not.
# File ext/nkf/lib/kconv.rb, line 173 def isjis(str) /\A [\t\n\r\x20-\x7E]* (?: (?:\x1b \x28 I [\x21-\x7E]* |\x1b \x28 J [\x21-\x7E]* |\x1b \x24 @ (?:[\x21-\x7E]{2})* |\x1b \x24 B (?:[\x21-\x7E]{2})* |\x1b \x24 \x28 D (?:[\x21-\x7E]{2})* )* \x1b \x28 B [\t\n\r\x20-\x7E]* )* \z/nox =~ str.dup.force_encoding('BINARY') ? true : false end
Returns whether input encoding is Shift_JIS or not.
# File ext/nkf/lib/kconv.rb, line 164 def issjis(str) str.dup.force_encoding(SJIS).valid_encoding? end
Returns whether input encoding is UTF-8 or not.
# File ext/nkf/lib/kconv.rb, line 192 def isutf8(str) str.dup.force_encoding(UTF8).valid_encoding? end
Convert str
to EUC-JP
# File ext/nkf/lib/kconv.rb, line 82 def toeuc(str) kconv(str, EUC) end
Convert str
to ISO-2022-JP
# File ext/nkf/lib/kconv.rb, line 73 def tojis(str) kconv(str, JIS) end
Convert self
to locale encoding
# File ext/nkf/lib/kconv.rb, line 127 def tolocale(str) kconv(str, Encoding.locale_charmap) end
Convert str
to Shift_JIS
# File ext/nkf/lib/kconv.rb, line 91 def tosjis(str) kconv(str, SJIS) end
Convert str
to UTF-16
# File ext/nkf/lib/kconv.rb, line 109 def toutf16(str) kconv(str, UTF16) end
Convert str
to UTF-32
# File ext/nkf/lib/kconv.rb, line 118 def toutf32(str) kconv(str, UTF32) end
Convert str
to UTF-8
# File ext/nkf/lib/kconv.rb, line 100 def toutf8(str) kconv(str, UTF8) end