- re_matchsub(+Regex, +String, -Sub:dict) is semidet
- re_matchsub(+Regex, +String, -Sub:dict, +Options) is semidet
- Match String against Regex. On success, Sub is a dict containing
integer keys for the numbered capture group and atom keys for the
named capture groups. The entire match string has the key
0. The associated value is determined by thecapture_type(Type)option passed to re_compile/3, or by flags if Regex is of the form Pattern/Flags; and may be specified at the level of individual captures using a naming convention for the caption name. See re_compile/3 for details.The example below exploits the typed groups to parse a date specification:
?- re_matchsub("(?<date> (?<year_I>(?:\\d\\d)?\\d\\d) - (?<month_I>\\d\\d) - (?<day_I>\\d\\d) )"/x, "2017-04-20", Sub, []). Sub = re_match{0:"2017-04-20", date:"2017-04-20", day:20, month:4, year:2017}.- Arguments:
-
Both - compilation and execution options are processed. See re_compile/3 and re_match/3 for the set of options. In addition, some compilation options may passed as /Flagsto Regex - see re_match/3 for the list of flags.Regex - See re_match/2 for a description of this argument.