- compile_pattern(+Pattern, +Options, -CompiledPattern)
- Precompile a pattern for repeated use
- match(+Pattern, +String)
- A substring of String matches the regular expression Pattern
- match(+Pattern, +String, +Options)
- A substring of String matches the regular expression Pattern
- match(+Pattern, +String, +Options, -Match)
- Match is the first substring of String that matches the regular expression Pattern
- matchall(+Pattern, +String, +Options, -AllMatches)
- AllMatches is a list of substrings of String which match the regular expression Pattern
- matchsub(+Pattern, +String, +Options, -SubMatches)
- A substring of String matches the regular expression Pattern and SubMatches are matching sub-expressions
- split(+Pattern, +String, +Options, -Parts)
- Parts is a list of substrings, partitioning String according to Pattern
?- ideal_match("(/[^/]*)+", "/usr/local/eclipse", L). L = ["/usr", "/local", "/eclipse"] Yesi.e. capture every instance of a matching subexpression. There seems to be no way to do that with a POSIX regexp implementation.