🔬This is a nightly-only experimental API. (
pattern #27721)Expand description
The string Pattern API.
The Pattern API provides a generic mechanism for using different patterntypes when searching through a string.
For more details, see the traitsPattern,Searcher,ReverseSearcher, andDoubleEndedSearcher.
Although this API is unstable, it is exposed via stable APIs on thestr type.
§Examples
Pattern isimplemented in the stable API for&str,char, slices ofchar, and functions and closuresimplementingFnMut(char) -> bool.
lets ="Can you find a needle in a haystack?";// &str patternassert_eq!(s.find("you"),Some(4));// char patternassert_eq!(s.find('n'),Some(2));// array of chars patternassert_eq!(s.find(&['a','e','i','o','u']),Some(1));// slice of chars patternassert_eq!(s.find(&['a','e','i','o','u'][..]),Some(1));// closure patternassert_eq!(s.find(|c: char| c.is_ascii_punctuation()),Some(35));Structs§
- Char
Array RefSearcher Experimental - Associated type for
<&[char; N] as Pattern>::Searcher<'a>. - Char
Array Searcher Experimental - Associated type for
<[char; N] as Pattern>::Searcher<'a>. - Char
Predicate Searcher Experimental - Associated type for
<F as Pattern>::Searcher<'a>. - Char
Searcher Experimental - Associated type for
<char as Pattern>::Searcher<'a>. - Char
Slice Searcher Experimental - Associated type for
<&[char] as Pattern>::Searcher<'a>. - StrSearcher
Experimental - Associated type for
<&str as Pattern>::Searcher<'a>.
Enums§
- Search
Step Experimental - Result of calling
Searcher::next()orReverseSearcher::next_back(). - Utf8
Pattern Experimental - Result of calling
Pattern::as_utf8_pattern().Can be used for inspecting the contents of aPatternin caseswhere the underlying representation can be represented as UTF-8.
Traits§
- Double
Ended Searcher Experimental - A marker trait to express that a
ReverseSearchercan be used for aDoubleEndedIteratorimplementation. - Pattern
Experimental - A string pattern.
- Reverse
Searcher Experimental - A reverse searcher for a string pattern.
- Searcher
Experimental - A searcher for a string pattern.