The match()
method retrieves the matches when matching a string against a regular expression.
str.match(regexp)
regexp
obj
is passed, it is implicitly converted to a RegExp by using new RegExp(obj)
.array
If the regular expression does not include the g
flag, returns the same result as RegExp.exec(). The returned Array has an extra input
property, which contains the original string that was parsed. In addition, it has an index
property, which represents the zero-based index of the match in the string.
If the regular expression includes the g
flag, the method returns an Array containing all matched substrings rather than match objects. Captured groups are not returned. If there were no matches, the method returns null.
RegExp
methodsmatch()
In the following example, match()
is used to find 'Chapter'
followed by 1 or more numeric characters followed by a decimal point and numeric character 0 or more times. The regular expression includes the i
flag so that case will be ignored.
var str = 'For more information, see Chapter 3.4.5.1'; var re = /(chapter \d+(\.\d)*)/i; var found = str.match(re); console.log(found); // logs ['Chapter 3.4.5.1', 'Chapter 3.4.5.1', '.1'] // 'Chapter 3.4.5.1' is the first match and the first value // remembered from `(Chapter \d+(\.\d)*)`. // '.1' is the last value remembered from `(\.\d)`.
match()
The following example demonstrates the use of the global and ignore case flags with match()
. All letters A through E and a through e are returned, each its own element in the array.
var str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'; var regexp = /[A-E]/gi; var matches_array = str.match(regexp); console.log(matches_array); // ['A', 'B', 'C', 'D', 'E', 'a', 'b', 'c', 'd', 'e']
match()
is called with a global regular expression, the RegExp.lastIndex property (if specified) will be reset to 0
().flags
argument is deprecated and throws a console warning (). This property is Gecko-only and will be removed in the future.Created by Mozilla Contributors, license: CC-BY-SA 2.5