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 contains more information on regular expressions and patterns.
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. 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 exec() have two additional properties: index (of the match) and input (the input string being searched). |
|
Same as > /noo/.test('Noodle'); false > /noo/i.test('Noodle'); true |