[ library(regex) | Reference Manual | Alphabetic Index ]
matchsub(+Pattern, +String, +Options, -SubMatches)
A substring of String matches the regular expression Pattern and SubMatches are matching sub-expressions
- Pattern
- A string (or a compiled pattern handle)
- String
- A string
- Options
- List of atoms
- SubMatches
- Output: List of strings
Description
Succeeds if all or a substring of String matches the regular
expression Pattern. For the description of regular expressions
see the library(regex) page.
Options is a (possibly empty) list of atomic option names,
as described in the library(regex) page.
SubMatches is bound to a list of strings, each corresponding to
a parenthesized subexpression in Pattern. These subexpressions
are ordered according to the position of their opening parenthesis
within the pattern. The matching string appears on the corresponding
position in the SubMatches list. Note that, if a subexpression matches
several times, only the last match is returned.
Modes and Determinism
- matchsub(+, +, +, -) is semidet
Fail Conditions
String does not match Pattern
Examples
?- matchsub("Name:([^,]+), Age:([0-9]+),", "Name:Fred, Age:34,", [], L).
L = ["Fred", "34"]
Yes
See Also
library(regex), match / 2, match / 3, match / 4, compile_pattern / 3