regex.extract()

regex.extract(haystack, pattern [, group]) extracts a substring matching a regex pattern from a string.

Returns

  • if haystack is a string and pattern matches, returns the matched substring (or the specified capture group if group is provided).

    • group 0 returns the entire match (default).

    • group 1 returns the first capture group (...).

    • group 2 returns the second capture group, etc.

  • if no match is found or inputs are invalid, returns null.

Examples

// extract the first IPv4 address from a message
regex.extract(message, /\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/)

// extract domain from email
regex.extract(email, /@(.+)$/, 1)

// extract capture groups
| eval address = "123 Sesame Street",
  street_number = regex.extract(address, /^(\d+)\s+(.+)$/, 1), // 123
  street_name   = regex.extract(address, /^(\d+)\s+(.+)$/, 2)  // Sesame Street

Last updated

Was this helpful?