6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

全角を半角に変換する。(javascript)

Last updated at Posted at 2017-12-18

業務中に全角から半角に変換する必要が出て来た。
少しでも、その作業が楽になればと思い色々調べて作ったので、メモ的に残す。

##動作

  1. 「半角へ」ボタンを押す。
  2. InputBoxが立ち上がる。
  3. 前角英数字を入力する。
  4. 「OK」を押す。
  5. TextBoxに半角で出力される。

##コード
###html

main.html
<html>

<head>
    <meta charset="utf-8" />
    <script src="zenkaku_hankaku.js"></script>
</head>

<body>
    <form name="form">
        <input type="textbox" id="input" value="" />
        <input type="button" onclick="box();" value="半角へ" />
    </form>
</body>

</html>

###Javascript

zenkaku_hankaku.js
// InputBoxを起動。
function box(){
  // InputBoxをセット
  box = window.prompt('半角に変換したい文字を入力してください', '');

  // 空白だった場合
  if (!box) {
    window.alert('キャンセルされました');
    return;
  }

  //空白でなければ、半角へのプログラム実行。
  this.zenhan(box);
}

//半角へのプログラム
function zenhan(a){
  // 10進数の場合
  a = a.replace(/[A-Za-z0-9]/g, (s) => {
    return String.fromCharCode(
      s.charCodeAt(0) - 65248
    );
  });

  // 16進数の場合
  a = a.replace(/[A-Za-z0-9]/g, (s) => {
    return String.fromCharCode(
      s.charCodeAt(0) - 0xFEE0
    );
  });

  // TextBoxへ変換後の文字列を戻す。
  document.forms.form.input.value = a;
}

##参考
JavaScriptで英数を全角/半角に変換する方法
JavaScript で全角数字を半角に変換
入力ダイアログを表示する

6
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?