JS: String.prototype.match

By Xah Lee. Date: . Last updated: .

String.prototoype.match return a array, of captured groups, or, of all occurrences , depending on whether the regexp pattern has the global flag g. [see JS: RegExp Syntax]

If the argument is a string, it is converted to a RegExp object.

Return a array of captured patterns. Index 0 is the whole matched string, index 1 is first captured pattern.

If there's the global flag g, return a array of all occurrences of matched string.

Return null if no match.

Get Captured Groups

Example of match without global flag. Get all captured groups.

// example of RegExp “match” method, capture groups
// capture the attribute values in a image tag

const xx = '<img class="pict" src="cat.jpg" alt="my cat" width="600" height="400">';

const result = xx.match(/<img class="([^"]+)" src="([^"]+)" alt="([^"]+)" width="([^"]+)" height="([^"]+)">/);

console.log(result[0]); // <img class="i" src="cat.jpg" alt="my cat" width="600" height="400">
console.log(result[1]); // pict
console.log(result[2]); // cat.jpg
console.log(result[3]); // my cat
console.log(result[4]); // 600
console.log(result[5]); // 400

Get All Occurrences

Example of match with global flag. Get all occurrences.

// example of RegExp “match” method with flag g
// get all occurrences

const xx = "google or yahoo for doodle";

console.log(
 xx.match(/.o+/g) // [ 'goo', ' o', 'hoo', 'fo', 'doo' ]
);

console.log(
 xx.match(/x+/g) // null
);

Reference

ECMAScript® 2016 Language Specification#sec-string.prototype.match

RegExp Topic

  1. JS: RegExp Tutorial
  2. JS: RegExp Syntax
  3. JS: Regex Find/Replace
  4. JS: RegExp Object
  5. JS: RegExp Constructor
  6. JS: RegExp.prototype

JS String

  1. String Overview
  2. Template String
  3. Char, Code Unit, Code Point
  4. String Escape Sequence
  5. Unicode Escape Sequence
  6. String to Number
  7. Encode URL, Escape String
  8. Format Number
  9. Source Code Encoding
  10. Allowed Characters in Identifier
  11. String Object
  12. String.prototype
Liket it? Put $5 at patreon.

Or, Buy JavaScript in Depth

If you have a question, put $5 at patreon and message me.

Web Dev Tutorials

  1. HTML
  2. Visual CSS
  3. JS in Depth
  4. JS Reference
  5. DOM
  6. SVG
  7. Web Dev Blog