RegExp
You can create a regular expression object using the RegExp() constructor. You pass the expression pattern as the first parameter and the pattern modifiers as the second:
> var re = new RegExp('[dn]o+dle', 'gmi');
This matches "noodle", "doodle", "doooodle", and so on. It's equivalent to using the regular expression literal:
> var re = ('/[dn]o+dle/gmi'); // recommended
Chapter 4, Objects and Appendix D, Regular Expressions contain more information on regular expressions and patterns.
The RegExp.prototype members
Following are the RegExp.prototype members:
|
Property/method |
Description |
|
|
Read-only |
|
|
Read-only. |
|
|
Read-only. |
|
|
Contains the position in the string where the next match should start. > var re = /[dn]o+dle/g;
> re.lastIndex;
0
> re.exec("noodle doodle");
["noodle"]
> re.lastIndex;
6
> re.exec("noodle doodle");
["doodle"]
> re.lastIndex;
13
> re.exec("noodle doodle");
null
> re.lastIndex;
0
|
|
|
Read-only. Returns the regular expression pattern (without the modifiers): > var re = /[nd]o+dle/gmi;
> re.source;
"[nd]o+dle"
|
|
|
Matches the input string with the regular expression. On a successful match returns an array containing the match and any capturing groups. With the > var re = /([dn])(o+)dle/g;
> re.exec("noodle doodle");
["noodle", "n", "oo"]
> re.exec("noodle doodle");
["doodle", "d", "oo"]
The arrays returned by
|
|
|
Same as > /noo/.test('Noodle');
false
> /noo/i.test('Noodle');
true
|