- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- ソース を表示
- JavaScript/文法/文字列関数/正規表現 へ行く。
- 1 (2009-11-09 (月) 12:33:21)
- 2 (2009-11-09 (月) 13:27:58)
- 3 (2010-05-04 (火) 20:00:43)
- 4 (2011-01-31 (月) 09:01:20)
正規表現
正規表現オブジェクト
var re = new RegExp('a'); var re = /a/; // 上の構文糖 re.test('abc'); // true re.exec('abc'); // "a"
なお、文字列リテラル('a')では\はエスケープされるので、例えばnew RegExp('\\d')のように\を重ねる事。正規表現リテラル(/a/)では重ねなくて良い。
"文字列".search()
ポジションを取り出す。
"123abc456".search(/a/); // 3 "123abc456".search('x'); // -1
"文字列".match()
マッチした文字列を取り出す。
通常
"123abc456".match("[a-z]"); // "a"
gスイッチ付き
"123abc456".match("[a-z]", "g"); // ["a", "b", "c"]
REGEX.exec()
マッチした文字列を取り出す。
通常
var re = /[a-z]/; re.exec("123abc456"); // "a" re.exec("123abc456"); // "a"
gスイッチ付き
var reg = /[a-z]/g; reg.exec("123abc456"); // "a" reg.exec("123abc456"); // "b" reg.exec("123abc456"); // "c" reg.exec("123abc456"); // null
"文字列".replace()
文字列を置換する。
"123abc456".replace(/\d+/,'X'); // "Xabc456" "123abc456".replace(/\d+/g,'X'); // "XabcX" "123abc456".replace(/[a-z]/g, function (val,pos) { return "[" + val + ":" + pos + "]"; }) ); // 123[a:3][b:4][c:5]456
split()
"a,b:c,,d".split(/[,:]/); // 他のブラウザ["a", "b", "c", "", "d"] // IE ["a", "b", "c", "d"]