W3cubDocs

/Rust

Trait std::str::pattern::Pattern

pub trait Pattern<'a> {
    type Searcher: Searcher<'a>;
    fn into_searcher(self, haystack: &'a str) -> Self::Searcher;

    fn is_contained_in(self, haystack: &'a str) -> bool { ... }
    fn is_prefix_of(self, haystack: &'a str) -> bool { ... }
    fn is_suffix_of(self, haystack: &'a str) -> bool where Self::Searcher: ReverseSearcher<'a> { ... }
}
🔬 This is a nightly-only experimental API. (pattern #27721)API not fully fleshed out and ready to be stabilized

A string pattern.

A Pattern<'a> expresses that the implementing type can be used as a string pattern for searching in a &'a str.

For example, both 'a' and "aa" are patterns that would match at index 1 in the string "baaaab".

The trait itself acts as a builder for an associated Searcher type, which does the actual work of finding occurrences of the pattern in a string.

Associated Types

🔬 This is a nightly-only experimental API. (pattern #27721)API not fully fleshed out and ready to be stabilized

Associated searcher for this pattern

Required Methods

🔬 This is a nightly-only experimental API. (pattern #27721)API not fully fleshed out and ready to be stabilized

Constructs the associated searcher from self and the haystack to search in.

Provided Methods

🔬 This is a nightly-only experimental API. (pattern #27721)API not fully fleshed out and ready to be stabilized

Checks whether the pattern matches anywhere in the haystack

🔬 This is a nightly-only experimental API. (pattern #27721)API not fully fleshed out and ready to be stabilized

Checks whether the pattern matches at the front of the haystack

🔬 This is a nightly-only experimental API. (pattern #27721)API not fully fleshed out and ready to be stabilized

Checks whether the pattern matches at the back of the haystack

Implementors

  • impl<'a, 'b> Pattern<'a> for &'b String
  • impl<'a> Pattern<'a> for char
  • impl<'a, 'b> Pattern<'a> for &'b [char]
  • impl<'a, F> Pattern<'a> for F where F: FnMut(char) -> bool
  • impl<'a, 'b, 'c> Pattern<'a> for &'c &'b str
  • impl<'a, 'b> Pattern<'a> for &'b str

© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/str/pattern/trait.Pattern.html