Currently, I'm using regex in Javascript / Node via find() and that works for finding the beginning of the pattern. But I'd also like to be able to find out where the pattern ends. Is that possible?
str. match(pattern) , if pattern has the global flag g , will return all the matches as an array.
It indicates that the subpattern is a non-capture subpattern. That means whatever is matched in (?:\w+\s) , even though it's enclosed by () it won't appear in the list of matches, only (\w+) will.
A flag is an optional parameter to a regex that modifies its behavior of searching. A flag changes the default searching behavior of a regular expression. It makes a regex search in a different way. A flag is denoted using a single lowercase alphabetic character.
If you use the RegExp.exec()
method, you can get the information you need.
var pattern = /\d+\.?\d*|\.\d+/;
var match = pattern.exec("the number is 7.5!");
var start = match.index;
var text = match[0];
var end = start + text.length;
/\d+\.?\d*|\.\d+/
is equivalent to new RegExp("\\d+\\.?|\\.\\d+")
. The literal syntax saves some backslashes.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With