- ベストアンサー
javaで入力したの半角カタカナを全角に変換したい
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
1.配列とかで半角カナと全角カナの対応表を作っておく。 単独の表と、濁点(半濁点)付きの表とを分けて作っておく。 2.変換対象の文字列をcharAt()で1文字ずつループで回していく。 3.1文字を取り出したら、まずその次の文字を見る。 4.その次が濁点か半濁点なら、濁点の表と照らし合わせる。 マッチするものがあればそれを拾い、ループを2文字分進める。 5.濁点の表にマッチしないか、次が濁点でない場合は 単独の表示照らし合わせ、ループを1文字分進める。 …というやりかたでどうでしょうか?
その他の回答 (3)
- pcbeginner
- ベストアンサー率46% (261/560)
実際に組んでないのですが、こんなのはどうでしょ? 1. とりあえずバカちょんで変換 (半角の濁点→全角の濁点、半角の半濁点→全角の半濁点) 2. バカちょんで変換された文字列から ”か”+”全角の濁点” を探し、(indexOfメソッド)あったら ”が” に置換する。 3. 2.の処理をindexOfメソッドからの戻りが-1になるまでやる。 4. 2.と3.の処理を ”き”+”全角の濁点” ”く”+省略 …省略 ”は”+”全角の半濁点” と繰り返す。 なんか効率悪そうですね…(^^;A
お礼
ありがとうございました。参考になりました。
- pcbeginner
- ベストアンサー率46% (261/560)
HashMapに詰め込んでおくとか。 -------------------------------------------------- HashMap hogemap; private void init(){ hogemap = new HashMap(); hogemap.put("半角のア","全角のア"); …省略… } public String convert(String key){ return (String)hogemap.get(key); } -------------------------------------------------- みたいな感じで。 (半角カタカナを入れると全角カタカナに変換されちゃうので、"半角のア"、"全角のア"と記述してます。) ただ濁音と半濁音のことは考慮してないので、別途考えないといけないと思いますが…。 他にも検索すればもっといいのがありそうですね。
お礼
ありがとうございました。参考になりました。
補足
ご回答をありがとうございました。 今困っているの部分はここです。 ’゛’のような濁音半濁音については、 バ→バと結合する。 結合できないときは、全角の(半)濁音をそのまま出力すること。 例:ア゛(アに濁点) → “ア゛”
関連するQ&A
- 半角カタカナを全角カタカナに変換したい
Windows2000/Microsoft Excel2000です。 入力されている文字列のカタカナが半角になっているのを 全角に一括変換する数式はありますでしょうか? 英数字は半角のまま残したいのですが。 JISを使うと英数字も全角になってしまいます。 ヘルプいただけると大変助かります。
- ベストアンサー
- Windows NT・2000
- 全角から半角に変換する
Javaで、文字列の中に全角があれば単純に半角に変換するような処理をしたいです。具体的には、次のような文字列があった場合、以下のように変換したいです。 <変更前> あ亜アアaaAA11%% <変更後> ア亜アアaaAA11%% つまり、以下のようにしたいです ・全角ひらがな→半角カタカナ ・漢字:何もしない ・全角カタカナ→半角カタカナ ・半角カタカナ:何もしない ・半角アルファベット→何もしない ・全角アルファベット→半角アルファベット ・半角数字→何もしない ・全角数字→半角数字 ・半角記号→何もしない ・全角記号→半角記号 上記のように書くと複雑に見えますが、要は基本的に半角に相当する文字がある場合には半角にしたいだけです。Googleで探してみましたが、Javaで標準で上記のような処理を出来るようなメソッドを見つけることができませんでした。このようなメソッドは標準で存在しますでしょうか? 自作する場合、いくつかアプローチがあると考えられますが、最もパフォーマンスを速くしたい場合にはどのような作り方にした方がよいでしょうか。お手数ですが、宜しくお願いします。 <追伸> プレビューで見たら、半角の文字が全角に自動的に変換されてしまいました。。 例文からはわかりにくいかも知れませんが、宜しくお願いします。。
- ベストアンサー
- Java
- 全角カタカナを半角カタカナに一発変換したい
全角カタカナを半角カタカナに一発変換したいのですが、どうしたら可能でしょうか?ATOKなどは使わず、あくまでも純正でいければと思っています。OSはXP Homeと2000です。
- ベストアンサー
- Windows XP
- 半角カタカナ→全角カタカナへの変換
perlプログラムで半角カタカナ→全角カタカナへの一括変換をしたいのですが、 なにか良いプログラムを教えてください。 例) アップルマンズ→アップルマンズ に変換したい。
- 締切済み
- Perl
- Excel:全角カタカナを入力時に自動的に半角カタカナにしたい
恐れ入ります。 Excel2007にて全角カタカナをASC関数などで半角カタカナに修正をしているのですが、列がふたつできてしまうため少し面倒です。 (元の全角の列、半角になおした列) 入力時に設定をしてしまうことは可能でしょうか。 入力の際に、カタカナが自動的に半角になるようにできれば とてもたすかります。 ご存じの方、どうぞよろしくお願い致します。
- 締切済み
- オフィス系ソフト
- html内のカタカナを全て全角から半角に変換したい。
html内にある全角カタカナを半角カタカナに変換したいです。 htmlが100くらいあり、一つ一つ開いていくのはかなりの作業となってしまいます。 そこで、ソフト等を使って簡単に変換したいのですが、どなたかよい方法をご存じないでしょうか? できれば、アイコンをドラッグ&ドロップするくらいの簡単なのが最高です。 よろしくお願いします。
- ベストアンサー
- HTML
- テキストエディタ(半角カタカナ→全角カタカナ)
みなさまこんにちは。 テキストファイル内の半角カタカナを全角カタカナに一括で変換できるようなテキストエディタ(もしくはソフト内の機能で:マクロなど)をご存知ないでしょうか。 ○ 半角の「キングダム」→全角の「キングダム」 × 半角の「キングダム」→全角の「キンク゛タ゛ム」 ↑濁点の部分が「ク」と「゛」のように分割されない形で。 できれば、上の ○ のように変換したいのですが。。 ソフトや処理が複数にまたがってもかまいませんので、どちらか一方だけでもご存知の方がいらっしゃいましたらよろしくお願いいたします。
- ベストアンサー
- Windows XP
- カタカナのみを半角から全角に変換したいのですが
VBAについて教えてください。 文字をHPにアップできるように、カタカナのみを半角から全角に変換したいのですが 何か良い方法はありますか? 文字は英字・ひらがな・カタカナ・漢字がランダムに入っています。 例えば Sub test() Dim a As String a = "aaaアアア<>BBB" End Sub の状態で。「アアア」のみを全角にするにはどうすればいいでしょうか? アルファベットは半角のままにしたいです。
- ベストアンサー
- オフィス系ソフト
- 半角から全角への一括変換
エクセルのA列に かぼちゃのモンブラン、 みかんゼリー、 野菜カレー、 海老サンドイッチ といったように、ランダムに半角と全角の片仮名が入っています。 A列の半角片仮名をすべて全角に変換するには B列にどのような関数を入力すればよろしいでしょうか? ご存知の方、教えていただけましたら幸いです。 宜しくお願い致します。
- ベストアンサー
- Excel(エクセル)
- 半角/全角 キーを押すとカタカナが出てくるようになりました
以前は、ひらがなが入力出来る状態の時に半角/全角 キーを押すと半角英数文字を入力できるようになりました。ところが、今では半角/全角 キーを押すと半角のカタカナが入力されるようになってしまったのです。どうしたら元通りになるのでしょうか。お分かりの方いらっしゃいましたら、どうかお教えください。
- ベストアンサー
- その他(インターネット・Webサービス)
お礼
ありがとうございました。参考になりました。