|
The RegExp object is used to specify what to search for in a text What is RegExp RegExp, is short for regular expression. When you search in a text, you can use a pattern to describe what you are searching for. RegExp IS this pattern.
A simple pattern can be a single character. A more difficult pattern consists of more characters, and can be used for parsing, format checking, substitution and more. You can specify where in the string to search, what type of characters to search for, and more. Defining RegExp The RegExp object is used to store the search pattern. We define a RegExp object with the new keyword. The following code line defines a RegExp object called patt1 with the pattern "e": var patt1=new RegExp("e"); When you use this RegExp object to search in a string, you will find the letter "e". Methods of the RegExp Object The RegExp Object has 3 methods: test(), exec(), and compile(). test() The test() method searches a string for a specified value. Returns true or false Example: var patt1=new RegExp("e"); document.write(patt1.test("The best things in life are free")); Since there is an "e" in the string, the output of the code above will be: true Try it yourself exec() The exec() method searches a string for a particular value. Returns the text of the found value. If no match is found, it returns null Example 1: var patt1=new RegExp("e"); document.write(patt1.exec("The best things in life are free")); Since there is an "e" in the string, the output of the code above will be:
e Try it yourself Example 2: You can add a second parameter to the RegExp object, to specify your search. For example; if you want to find all occurrences of a character, you can use the "g" parameter ("global"). When using the "g" parameter, the exec() method works like this: Finds the first occurence of "e", and stores its position If you run exec() again, it starts at the stored position, and finds the next occurence of "e", and stores its position
var patt1=new RegExp("e","g"); do { result=patt1.exec("The best things in life are free"); document.write(result); } while (result!=null) Since there is six "e" letters in the string, the output of the code above will be: eeeeeenull Try it yourself compile() The compile() method is used to change the RegExp. compile() can change both the search pattern, and add or remove the second parameter. Example: var patt1=new RegExp("e"); document.write(patt1.test("The best things in life are free")); patt1.compile("d"); document.write(patt1.test("The best things in life are free")); Since there is an "e" in the string, but not a "d", the output of the code above will be: truefalse Try it yourself
|