Thursday, August 21, 2008
Looping through an array of regular expressions in JavaScript
Regular Expressions in JavaScript are easy (assuming you know regular expressions ;). This is NOT a tutorial on regular expressions. I recommend the this site as an intro to Regular Expressions using JavaScript.
What this entry does cover is how to create a regular expression in JavaScript.
The recommended way is
var regex = /int/
This will create a RegExp object that matches on the pattern int. This is not very interesting but it does illustrate that lack of double-quotes. This a very nice syntax that does NOT require the regular expression to be a literal string which in turn require the escaping of backslashes.
Here is an example of a match on a digit
var regex = /\d/
There are times like when getting input from the user or a database or something that you need to use the string syntax. In this case you do have to escape backslashes. This site explains this concept in more depth than I do here.
var regex = new RegExp("\\d");
By default Regular Expressions in JavaScript match based on case and only match on the first occurrence. You can change that by using one of the following options.
var regex = /int/gi
or
var regex = new RegExp("int", "gi");
Now that we know how to create a regex expression you may be starting to see how we can use them in arrays.
Arrays in JavaScript can be done a few ways.
var myArray = new Array(/int/gi, /\w/gi);
or
var myArray = new Array(
new RegExp("int", "gi"),
new RegExp("\\w", "gi"
);
or
var myArray = new Array(5);
myArray[0] = new RegExp("int", "gi");
myArray[1] = /int/gi
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment