pub enum Regex<T> {
Show 14 variants
Begin,
End,
Satisfy(Rc<dyn Fn(&T) + 'static>),
NotSatisfy(Rc<dyn Fn(&T) + 'static>),
Concat(Rc<Regex<T>>, Rc<Regex<T>>),
Group(Rc<Regex<T>>),
NamedGroup(String, Rc<Regex<T>>),
NonCapturingGroup(Rc<Regex<T>>),
Or(Rc<Regex<T>>, Rc<Regex<T>>),
ZeroOrOne(Rc<Regex<T>>, bool),
Repeat0(Rc<Regex<T>>, bool),
Repeat1(Rc<Regex<T>>, bool),
RepeatN(Rc<Regex<T>>, usize),
RepeatMinMax(Rc<Regex<T>>, usize, Option<usize>, bool),
}Variants
Begin
Like a ‘^’ in ragex. Regex that matches the beginning of the input.
End
Like a ‘$’ in ragex. Regex that matches the end of the input.
Satisfy(Rc<dyn Fn(&T) + 'static>)
Like a [character class] in regex. Regex that matches any values that satisfy the given predicate.
NotSatisfy(Rc<dyn Fn(&T) + 'static>)
Like a [^character class] in regex. Regex that matches any values that not satisfy the given predicate.
Concat(Rc<Regex<T>>, Rc<Regex<T>>)
Like a RS in regex. Concatenate two regex.
Group(Rc<Regex<T>>)
Like a (R) in regex. Numbered capturing group (submatch).
NamedGroup(String, Rc<Regex<T>>)
Like a (?<name>R) in regex. Numbered capturing group (submatch).
NonCapturingGroup(Rc<Regex<T>>)
Like a (?:R) in regex. Numbered non-capturing group.
Or(Rc<Regex<T>>, Rc<Regex<T>>)
Like a R|S in regex. Regex alternation.
ZeroOrOne(Rc<Regex<T>>, bool)
Like a ?, ?? in regex. Regex zero or one.
Repeat0(Rc<Regex<T>>, bool)
Like a *, *? in regex. Regex zero or one.
Repeat1(Rc<Regex<T>>, bool)
Like a +, +? in regex. Regex one or more.
RepeatN(Rc<Regex<T>>, usize)
Like a {n} in regex. Exactly N-times.
RepeatMinMax(Rc<Regex<T>>, usize, Option<usize>, bool)
Like a {n,m}, {n,m}? or {n,}, {n,}? in regex. n or n+1 or .. m times.
Implementations
sourceimpl<T> Regex<T> where
T: 'static,
impl<T> Regex<T> where
T: 'static,
sourcepub fn begin() -> Regex<T>
pub fn begin() -> Regex<T>
Like a ^ in regex. Build regex that matches the begging of the input.
sourcepub fn satisfy(f: impl Fn(&T) -> bool + 'static) -> Regex<T>
pub fn satisfy(f: impl Fn(&T) -> bool + 'static) -> Regex<T>
Like a [character class] in regex. Build regex that matches any value that satisfies the given predicate.
sourcepub fn not_satisfy(f: impl Fn(&T) -> bool + 'static) -> Regex<T>
pub fn not_satisfy(f: impl Fn(&T) -> bool + 'static) -> Regex<T>
Like a [^character class] in regex. Build regex that matches any value that not satisfies the given predicate.
sourcepub fn zero_or_one(reg: Regex<T>, greedy: bool) -> Regex<T>
pub fn zero_or_one(reg: Regex<T>, greedy: bool) -> Regex<T>
Like a ?, ?? in regex. Build regex that matches underlying regex zero or one times.
sourcepub fn repeat1(reg: Regex<T>, greedy: bool) -> Regex<T>
pub fn repeat1(reg: Regex<T>, greedy: bool) -> Regex<T>
Like a +, +? in regex. Build regex that matches underlying regex one or more.
sourcepub fn repeat0(reg: Regex<T>, greedy: bool) -> Regex<T>
pub fn repeat0(reg: Regex<T>, greedy: bool) -> Regex<T>
Like a *, *? in regex. Build regex that matches underlying regex zero or more.
sourcepub fn repeat_n(reg: Regex<T>, n: usize) -> Regex<T>
pub fn repeat_n(reg: Regex<T>, n: usize) -> Regex<T>
Like a {n} in regex. Build regex that matches underlying regex N-times.
sourcepub fn repeat_n_or_more(reg: Regex<T>, n: usize, greedy: bool) -> Regex<T>
pub fn repeat_n_or_more(reg: Regex<T>, n: usize, greedy: bool) -> Regex<T>
Like a {n,}, {n,}? in regex. Build regex that matches underlying regex N-times or more.
sourcepub fn repeat_min_max(reg: Regex<T>, n: usize, m: usize, greedy: bool) -> Regex<T>
pub fn repeat_min_max(reg: Regex<T>, n: usize, m: usize, greedy: bool) -> Regex<T>
Like a {n,m}, {n,m}? in regex. Build regex that matches underlying regex n or n + 1 or … or m times.
sourcepub fn concat(r: Regex<T>, s: Regex<T>) -> Regex<T>
pub fn concat(r: Regex<T>, s: Regex<T>) -> Regex<T>
Like a RS in regex. Build regex that R followd by S.
sourcepub fn or(r: Regex<T>, s: Regex<T>) -> Regex<T>
pub fn or(r: Regex<T>, s: Regex<T>) -> Regex<T>
Like a R|S in regex. Build regex that matches R or S.
sourcepub fn group(r: Regex<T>) -> Regex<T>
pub fn group(r: Regex<T>) -> Regex<T>
Like a (R) in regex. Numbered capturing group (submatch).
sourcepub fn non_capturing_group(r: Regex<T>) -> Regex<T>
pub fn non_capturing_group(r: Regex<T>) -> Regex<T>
Like a (?:R) in regex. Numbered capturing group (submatch).
sourcepub fn named_group(name: &str, r: Regex<T>) -> Regex<T>
pub fn named_group(name: &str, r: Regex<T>) -> Regex<T>
Like a (?P<name>R) in regex. Numbered capturing group (submatch).
sourcepub fn is(value: T) -> Regex<T> where
T: 'static + PartialEq<T>,
pub fn is(value: T) -> Regex<T> where
T: 'static + PartialEq<T>,
Build regex that matches given value.
sourcepub fn seq(values: &[T]) -> Regex<T> where
T: 'static + PartialEq<T> + Clone,
pub fn seq(values: &[T]) -> Regex<T> where
T: 'static + PartialEq<T> + Clone,
Build regex that matches given value sequence.
pub fn compile(self) -> impl CompiledRegex<T>
Trait Implementations
Auto Trait Implementations
impl<T> !RefUnwindSafe for Regex<T>
impl<T> !Send for Regex<T>
impl<T> !Sync for Regex<T>
impl<T> Unpin for Regex<T>
impl<T> !UnwindSafe for Regex<T>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more