【JS】正規表現

■ 文字列検索する

構文

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

サンプル

入力チェック : 半角英数と#$%&/*.\|
<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>

■ 文字列の置き換え

構文

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

サンプル

桁区切り (カンマ区切り) : (\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>

■ 数値のカンマ区切り

 * 以下の関連記事を参照のこと。
http://blogs.yahoo.co.jp/dk521123/35792389.html

■ 注意

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

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

詳細は以下の関連記事を参照のこと。
http://blogs.yahoo.co.jp/dk521123/34918528.html

参考文献

 * 指定の文字以外入力値チェックが役立った。
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

関連記事

正規表現について

http://blogs.yahoo.co.jp/dk521123/26123295.html

Java

http://blogs.yahoo.co.jp/dk521123/33605882.html

C#

http://blogs.yahoo.co.jp/dk521123/24372100.html

VB

http://blogs.yahoo.co.jp/dk521123/26759038.html

【トラブル】正規表現で入力可能文字チェックした際に入力不可能文字「カンマ」が入力できてしまう

http://blogs.yahoo.co.jp/dk521123/34918528.html