アットウィキロゴ

全角カタカナとひらがなを半角カタカナに変換

/**
 * 全角カタカナとひらがなを半角カタカナに変換
 * 
 * 引数は、変換するターゲットのプロパティ名
 *  ターゲットの値を変換する
 *  半角カタカナ変換後の値は、ターゲットに戻る
 *
 * @param _targetTextPropertyName
 */
function hanKatakanaConvert(_targetTextPropertyName){
 
 var targetTextProperty_=document.getElementById(_targetTextPropertyName); 
 var targetText_=targetTextProperty_.value;
 
 //置換用の文字列配列
 var hanKatakanaList = new Array("ア","イ","ウ","エ","オ",
                   "カ","キ","ク","ケ","コ",
                   "サ","シ","ス","セ","ソ",
                   "タ","チ","ツ","テ","ト",
                   "ナ","ニ","ヌ","ネ","ノ",
                   "ハ","ヒ","フ","ヘ","ホ",
                   "マ","ミ","ム","メ","モ",
                   "ヤ","ユ","ヨ",
                   "ラ","リ","ル","レ","ロ",
                   "ワ","ヲ","ン",
                   "ガ","ギ","グ","ゲ","ゴ",
                   "ザ","ジ","ズ","ゼ","ゾ",
                   "ダ","ヂ","ヅ","デ","ド",
                   "バ","ビ","ブ","ベ","ボ",
                   "パ","ピ","プ","ペ","ポ",
                   "ァ","ィ","ゥ","ェ","ォ",
                   "ャ","ュ","ョ","ッ",
                   "ー","「","」",
                   "0","1","2","3","4","5","6","7","8","9"," ");
 
 var zenKatakanaList = new Array("ア","イ","ウ","エ","オ",
                   "カ","キ","ク","ケ","コ",
                   "サ","シ","ス","セ","ソ",
                   "タ","チ","ツ","テ","ト",
                   "ナ","ニ","ヌ","ネ","ノ",
                   "ハ","ヒ","フ","ヘ","ホ",
                   "マ","ミ","ム","メ","モ",
                   "ヤ","ユ","ヨ",
                   "ラ","リ","ル","レ","ロ",
                   "ワ","ヲ","ン",
                   "ガ","ギ","グ","ゲ","ゴ",
                   "ザ","ジ","ズ","ゼ","ゾ",
                   "ダ","ヂ","ヅ","デ","ド",
                   "バ","ビ","ブ","ベ","ボ",
                   "パ","ピ","プ","ペ","ポ",
                   "ァ","ィ","ゥ","ェ","ォ",
                   "ャ","ュ","ョ","ッ",
                   "ー","「","」",
                   "0","1","2","3","4","5","6","7","8","9"," ");
 
 var zenHiraganaList = new Array("あ","い","う","え","お",
                   "か","き","く","け","こ",
                   "さ","し","す","せ","そ",
                   "た","ち","つ","て","と",
                   "な","に","ぬ","ね","の",
                   "は","ひ","ふ","へ","ほ",
                   "ま","み","む","め","も",
                   "や","ゆ","よ",
                   "ら","り","る","れ","ろ",
                   "わ","を","ん",
                   "が","ぎ","ぐ","げ","ご",
                   "ざ","じ","ず","ぜ","ぞ",
                   "だ","ぢ","づ","で","ど",
                   "ば","び","ぶ","べ","ぼ",
                   "ぱ","ぴ","ぷ","ぺ","ぽ",
                   "ぁ","ぃ","ぅ","ぇ","ぉ",
                   "ゃ","ゅ","ょ","っ",
                   "ー","「","」",
                   "0","1","2","3","4","5","6","7","8","9"," ");
 
 //ターゲットテキストを1文字ずつ置換
 for (i=0; i<targetText_.length; i++){
  for (j=0; j<hanKatakanaList.length; j++){
   targetText_ = targetText_.replace(zenKatakanaList[j], hanKatakanaList[j]);
   targetText_ = targetText_.replace(zenHiraganaList[j], hanKatakanaList[j]);
  }
 }
 
 //フォームに変換した値を書きこむ
 targetTextProperty_.value=targetText_;
}

タグ:

JavaScript
+ タグ編集
  • タグ:
  • JavaScript
最終更新:2008年05月27日 21:52