Struct Matches

pub struct Matches<'r, 'h> { /* private fields */ }

An iterator over all non-overlapping matches in a haystack.

This iterator yields Match values. The iterator stops when no more matches can be found.

'r is the lifetime of the compiled regular expression and 'h is the lifetime of the haystack.

This iterator is created by Regex::find_iter.

Time complexity

Note that since an iterator runs potentially many searches on the haystack and since each search has worst case O(m * n) time complexity, the overall worst case time complexity for iteration is O(m * n^2).

Trait Implementations

impl<'r, 'h> Debug for Matches<'r, 'h>

fn fmt(&self, f: &mut Formatter<'_>) -> Result

impl<'r, 'h> FusedIterator for Matches<'r, 'h>

impl<'r, 'h> Iterator for Matches<'r, 'h>

type Item = Match<'h>;
fn next(&mut self) -> Option<Match<'h>>
fn count(self) -> usize

Auto Trait Implementations

impl<'r, 'h> Freeze for Matches<'r, 'h>

impl<'r, 'h> RefUnwindSafe for Matches<'r, 'h>

impl<'r, 'h> Send for Matches<'r, 'h>

impl<'r, 'h> Sync for Matches<'r, 'h>

impl<'r, 'h> Unpin for Matches<'r, 'h>

impl<'r, 'h> UnsafeUnpin for Matches<'r, 'h>

impl<'r, 'h> UnwindSafe for Matches<'r, 'h>

Blanket Implementations

impl<I> IntoIterator for Matches<'r, 'h> where I: Iterator,

type Item = <I as Iterator>::Item;
type IntoIter = I;
fn into_iter(self) -> I

impl<T> Any for Matches<'r, 'h> where T: 'static + ?Sized,

fn type_id(&self) -> TypeId

impl<T> Borrow<T> for Matches<'r, 'h> where T: ?Sized,

fn borrow(&self) -> &T

impl<T> BorrowMut<T> for Matches<'r, 'h> where T: ?Sized,

fn borrow_mut(&mut self) -> &mut T

impl<T> From<T> for Matches<'r, 'h>

fn from(t: T) -> T

Returns the argument unchanged.

impl<T, U> Into<U> for Matches<'r, 'h> where U: From<T>,

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

impl<T, U> TryFrom<U> for Matches<'r, 'h> where U: Into<T>,

type Error = never;
fn try_from(value: U) -> Result<T, never>

impl<T, U> TryInto<U> for Matches<'r, 'h> where U: TryFrom<T>,

type Error = <U as TryFrom<T>>::Error;
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>