55 lines
2.3 KiB
Factor
55 lines
2.3 KiB
Factor
|
! Copyright (C) 2009 Daniel Ehrenberg
|
||
|
! See http://factorcode.org/license.txt for BSD license.
|
||
|
USING: help.syntax help.markup regexp strings ;
|
||
|
IN: regexp.combinators
|
||
|
|
||
|
ABOUT: "regexp.combinators"
|
||
|
|
||
|
ARTICLE: "regexp.combinators" "Regular expression combinators"
|
||
|
"The " { $vocab-link "regexp.combinators" } " vocabulary defines combinators which can be used to build up regular expressions to match strings. This is in addition to the traditional syntax defined in the " { $vocab-link "regexp" } " vocabulary."
|
||
|
{ $subsection <literal> }
|
||
|
{ $subsection <nothing> }
|
||
|
{ $subsection <or> }
|
||
|
{ $subsection <and> }
|
||
|
{ $subsection <not> }
|
||
|
{ $subsection <sequence> }
|
||
|
{ $subsection <zero-or-more> }
|
||
|
{ $subsection <one-or-more> }
|
||
|
{ $subsection <option> } ;
|
||
|
|
||
|
HELP: <literal>
|
||
|
{ $values { "string" string } { "regexp" regexp } }
|
||
|
{ $description "Creates a regular expression which matches the given literal string." } ;
|
||
|
|
||
|
HELP: <nothing>
|
||
|
{ $values { "value" regexp } }
|
||
|
{ $description "The empty regular language." } ;
|
||
|
|
||
|
HELP: <or>
|
||
|
{ $values { "regexps" "a sequence of regular expressions" } { "disjunction" regexp } }
|
||
|
{ $description "Creates a new regular expression which matches the union of what elements of the sequence match." } ;
|
||
|
|
||
|
HELP: <and>
|
||
|
{ $values { "regexps" "a sequence of regular expressions" } { "conjunction" regexp } }
|
||
|
{ $description "Creates a new regular expression which matches the intersection of what elements of the sequence match." } ;
|
||
|
|
||
|
HELP: <sequence>
|
||
|
{ $values { "regexps" "a sequence of regular expressions" } { "regexp" regexp } }
|
||
|
{ $description "Creates a new regular expression which matches strings that match each element of the sequence in order." } ;
|
||
|
|
||
|
HELP: <not>
|
||
|
{ $values { "regexp" regexp } { "not-regexp" regexp } }
|
||
|
{ $description "Creates a new regular expression which matches everything that the given regexp does not match." } ;
|
||
|
|
||
|
HELP: <one-or-more>
|
||
|
{ $values { "regexp" regexp } { "regexp+" regexp } }
|
||
|
{ $description "Creates a new regular expression which matches one or more copies of the given regexp." } ;
|
||
|
|
||
|
HELP: <option>
|
||
|
{ $values { "regexp" regexp } { "regexp?" regexp } }
|
||
|
{ $description "Creates a new regular expression which matches zero or one copies of the given regexp." } ;
|
||
|
|
||
|
HELP: <zero-or-more>
|
||
|
{ $values { "regexp" regexp } { "regexp*" regexp } }
|
||
|
{ $description "Creates a new regular expression which matches zero or more copies of the given regexp." } ;
|