rubyで文章内の半角カタカナを全角カタカナに変換する方法を教えて下さい
例:ツチノコだわスゲェェェ→ツチノコだわスゲェェェ
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答3件
0
ベストアンサー
Ruby
1require "nkf" 2 3a="ツチノコだわスゲェェェ" 4puts NKF.nkf("-Xw",a) #=> ツチノコだわスゲェェェ
難点としては、エンコーディングを明示指定しないといけないこと。例の "-Xw" はUTF-8の場合です。
詳しくは、nkfのドキュメントを見てください。
補足すると、もともとnkfは文字コード変換ツールで、その機能ではRuby1.9以降不要になったわけですが、こういう半角全角変換のようなオマケ機能がいろいろ付いています。そのオマケ機能だけを使えれば良いのですが、それは出来ずに、出力先のエンコーディングの指定が必要です。"-Xw" と書きましたが、入力のエンコーディングも指定する"-XWw"がいいかもしれません。
投稿2016/01/14 12:51
編集2016/01/14 13:07総合スコア84423
0
"ruby 半角カナ 全角カナ 変換"
でgoogle 検索すれば、いくつも情報が得られます。
そのなかから幾つかを紹介します。
-
半角カタカナを全角カタカナに変換する(nkfライブラリ利用) http://www003.upp.so-net.ne.jp/NAMBOKU/ruby/ruby0362.html
-
標準添付ライブラリ紹介 【第 3 回】 Kconv/NKF/Iconv http://magazine.rubyist.net/?0009-BundledLibraries
投稿2016/01/14 14:29
総合スコア22324
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
こちらの記事に載っていました。
ruby
1require 'nkf' 2han = 'ツチノコだわスゲェェェ' 3p NKF.nkf('-Xw', han) 4 5>> "ツチノコだわスゲェェェ"
追記:
otnさんのおっしゃるとおりXがないとだめですね。
http://docs.ruby-lang.org/ja/2.0.0/class/NKF.html
投稿2016/01/14 12:52
編集2016/01/14 12:58総合スコア432
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。