【JS】JavaScript で 正規表現

【1】文字列検索する

1)構文

【比較対象の文字列】.match(/【正規表現】/)

2)サンプル

入力チェック : 半角英数と#$%&/*.|

<html>
<head>
<script language="Javascript">
function sampleRegularExpression () {
  if (frm.txt.value.match(/[^a-zA-Z0-9#$%&/*.\\|]/)) {
    // 禁止文字が入力された
    document.getElementById ('result').innerHTML = '<p>NG...</p>';
  } else {
    // OK
    document.getElementById ('result').innerHTML = '<p>OK</p>';
  }
}
</script>
</head>
<body>
<form name="frm">
<input type="text" name="txt">
<input type="button" name="btn" value="半角英数と#$%&/*.\|のみ" onclick="sampleRegularExpression()">
</form>
<p id="result">Result</p>
</body>
</html>

【2】文字列の置き換え

1)構文

【比較対象の文字列】.replace(/【正規表現】/)

2)サンプル

桁区切り (カンマ区切り) : (\d)(?=(\d\d\d)+(?!\d))

<html>
<head>
<script language="Javascript">
function sampleRegularExpression () {
  var number = document.getElementById ('inputData').value;
  document.getElementById ('result').innerHTML = String(number).replace( /(\d)(?=(\d\d\d)+(?!\d))/g, '$1,' );
}
</script>
</head>
<body>
<form name="frm">
<input type="text" name="txt" id="inputData">
<input type="button" name="btn" value="Click Me!" onclick="sampleRegularExpression()">
</form>
<p id="result">Result</p>
</body>
</html>

【3】注意

1)「ハイフン(-)」を入力可能文字にしたい場合

 * 「ハイフン(-)」を入力可能文字にしたい場合は、エスケープすること

参考文献

* 指定の文字以外入力値チェックが役立った。

http://homepage1.nifty.com/kodayan/javasc/string/reg02.htm

 * よく使いそうなサンプルあり。

http://befine.jugem.jp/?eid=29

カンマ区切り(サンプル)
http://so-zou.jp/web-app/tech/programming/javascript/grammar/data-type/string/comma-formatting.htm