[ ]で囲まれた文字列は文字クラスと呼ばれます。この文字列に含まれるいずれかの一文字にマッチングします。
任意の一文字ではなく、指定したある範囲の文字中の一文字にだけマッチングさせたい場合に使用します。
この実験では、match()メソッドによりマッチングするかどうかだけを見ます。
当然、search()やreplace()メソッドにより位置検索や置換も可能です。
// 検索対象文字列
var str1 = "abcdefghijk";
var str2 = "abceeeghijk";
var str3 = "abcfffghijk";
// 検索実行および結果出力
document.write("「abcdefghijk」の「[def]」による結果: ", str1.match(/[def]/));
document.write("<br>「abceeeghijk」の「[def]」による結果: ", str2.match(/[def]/));
document.write("<br>「abcfffghijk」の「[def]」による結果: ", str3.match(/[def]/));
// 検索対象文字列
var str = "abc\123,456xyz";
// 検索実行および結果出力
document.write("「[0-9]」による結果: ", str.match(/[0-9]/));
document.write("<br>「[0-9]+」による結果: ", str.match(/[0-9]+/));
document.write("<br>「\\[0-9]+」による結果: ", str.match(/\\[0-9]+/));
document.write("<br>「\\[0-9,]+」による結果: ", str.match(/\\[0-9,]+/));
// 検索対象文字列
var str = "abc\123,456xyz";
// 検索実行および結果出力
document.write("「[0-9]」による結果: ", str.match(/[0-9]/));
document.write("<br>「[0-9]+」による結果: ", str.match(/[0-9]+/));
document.write("<br>「\\[0-9]+」による結果: ", str.match(/\\[0-9]+/));
document.write("<br>「\\[0-9,]+」による結果: ", str.match(/\\[0-9,]+/));