フォームなどで入力した文字列を、あらかじめ決められた形に変換してみます。
全角英数を半角英数に変換する
HTML
<dl> <dt>全角英数を半角英数に変換する</dt> <dd> <input type="text" name="name" class="sample" /> </dd> </dl>
JavaScript
function convertStr(str) { return str.replace(/[A-Za-z0-9]/g, function(s) { return String.fromCharCode(s.charCodeAt(0)-0xFEE0); }); } $(function() { $('.sample').on('blur', function() { var str = $(this).val(); $(this).val(convertStr(str)); }); });
半角英数を全角英数に変換する
HTML
<dl> <dt>半角英数を全角英数に変換する</dt> <dd> <input type="text" name="name" class="sample" /> </dd> </dl>
JavaScript
function convertStr(str) { return str.replace(/[A-Za-z0-9]/g, function(s) { return String.fromCharCode(s.charCodeAt(0) + 0xFEE0); }); } $(function() { $('.sample').on('blur', function() { var str = $(this).val(); $(this).val(convertStr(str)); }); });
ひらがなをカタカナに変換する
HTML
<dl> <dt>ひらがなをカタカナに変換する</dt> <dd> <input type="text" name="name" class="sample" /> </dd> </dl>
JavaScript
function convertStr(str) { return str.replace(/[ぁ-ん]/g, function(s) { return String.fromCharCode(s.charCodeAt(0) + 0x60); }); } $(function() { $('.sample').on('blur', function() { var str = $(this).val(); $(this).val(convertStr(str)); }); });
カタカナをひらがなに変換する
HTML
<dl> <dt>カタカナをひらがなに変換する</dt> <dd> <input type="text" name="name" class="sample" /> </dd> </dl>
JavaScript
function convertStr(str) { return str.replace(/[ァ-ン]/g, function(s) { return String.fromCharCode(s.charCodeAt(0) - 0x60); }); } $(function() { $('.sample').on('blur', function() { var str = $(this).val(); $(this).val(convertStr(str)); }); });
半角カタカナを全角カタカナに変換する
HTML
<dl> <dt>半角カタカナを全角カタカナに変換する</dt> <dd> <input type="text" name="name" class="sample" /> </dd> </dl>
JavaScript
// 変換前 var beforeStr = new Array('ァ','ィ','ゥ','ェ','ォ','ャ','ュ','ョ','ッ','ー','ヴ','ガ','ギ','グ','ゲ','ゴ','ザ','ジ','ズ','ゼ','ゾ','ダ','ヂ','ヅ','デ','ド','バ','ビ','ブ','ベ','ボ','パ','ピ','プ','ペ','ポ','ア','イ','ウ','エ','オ','カ','キ','ク','ケ','コ','サ','シ','ス','セ','ソ','タ','チ','ツ','テ','ト','ナ','ニ','ヌ','ネ','ノ','ハ','ヒ','フ','ヘ','ホ','マ','ミ','ム','メ','モ','ヤ','ユ','ヨ','ラ','リ','ル','レ','ロ','ワ','ヲ','ン'); // 変換後 var afterStr = new Array('ァ','ィ','ゥ','ェ','ォ','ャ','ュ','ョ','ッ','ー','ヴ','ガ','ギ','グ','ゲ','ゴ','ザ','ジ','ズ','ゼ','ゾ','ダ','ヂ','ヅ','デ','ド','バ','ビ','ブ','ベ','ボ','パ','ピ','プ','ペ','ポ','ア','イ','ウ','エ','オ','カ','キ','ク','ケ','コ','サ','シ','ス','セ','ソ','タ','チ','ツ','テ','ト','ナ','ニ','ヌ','ネ','ノ','ハ','ヒ','フ','ヘ','ホ','マ','ミ','ム','メ','モ','ヤ','ユ','ヨ','ラ','リ','ル','レ','ロ','ワ','ヲ','ン'); function convertStr(str) { var fullStr = str; for(var i = 0; i < beforeStr.length; i++) { fullStr = fullStr.replace(new RegExp(beforeStr[i], 'g'), afterStr[i]); } return fullStr; } $(function() { $('.sample').on('blur', function() { var str = $(this).val(); $(this).val(convertStr(str)); }); });
【参考サイト】
- JavaScriptで全角英数と半角英数の相互変換 – Rewish@hatena
- 正規表現を使ったマッチングに変数を使用する | jstarted.com
- カタカナをひらがなに一括変換する – JavaScript TIPSふぁくとりー
コメントが承認されるまで時間がかかります。