mirror of
https://github.com/jbranchaud/til
synced 2026-01-03 07:08:01 +00:00
819 B
819 B
Named Regex Captures Are Assigned To Variables
Both String and Regexp include the =~ operator as a way of checking if a
string and a regex match.
When the Regexp version of
=~ with named
capture groups, those named captures will be auto-assigned as local variables.
Here is a regex that includes a named capture: (?<id>\d+). The parentheses
define the capture area and the ?<id> specifies that whatever follows in the
capture will be named id.
/Tile: (?<id>\d+)/ =~ 'Tile: 1234'
#=> 0
id
=> "1234"
After the match operator (=~) runs in the first line, the local variable id
gets assigned to whatever it matches in the corresponding string.