I am having some trouble with my regex in javascript.
I have the following code, that I think should match, but it doesn’t.
var rgx = new RegExp("{\d+:(\d+)}");
if (rgx.test("{0:00000}") == true) {
alert("match");
}
else
{
alert("no match");
}
I am unsure if I should use test() here. I really want to catch the group, in my regex but exec() seems to give me the same result.
So what am I doing wrong?
The problem is that you need to escape the \ character in your regex:
Alternatively, you can use the literal syntax:
To capture the results, you should also use the .match function as opposed to test or exec. It will return null if it doesn’t match and an array of at least one element if it does match.