Module nom::lib::std::str::pattern [−][src]
🔬 This is a nightly-only experimental API. (pattern
)
API not fully fleshed out and ready to be stabilized
The string Pattern API.
The Pattern API provides a generic mechanism for using different pattern types when searching through a string.
For more details, see the traits Pattern
, Searcher
,
ReverseSearcher
, and DoubleEndedSearcher
.
Although this API is unstable, it is exposed via stable APIs on the
str
type.
Examples
Pattern
is implemented in the stable API for
&str
, [char
], slices of [char
], and functions and closures
implementing FnMut(char) -> bool
.
let s = "Can you find a needle in a haystack?"; // &str pattern assert_eq!(s.find("you"), Some(4)); // char pattern assert_eq!(s.find('n'), Some(2)); // slice of chars pattern assert_eq!(s.find(&['a', 'e', 'i', 'o', 'u'][..]), Some(1)); // closure pattern assert_eq!(s.find(|c: char| c.is_ascii_punctuation()), Some(35));
Structs
CharPredicateSearcher | Experimental Associated type for |
CharSearcher | Experimental Associated type for |
CharSliceSearcher | Experimental Associated type for |
StrSearcher | Experimental Associated type for |
Enums
SearchStep | Experimental Result of calling |
Traits
DoubleEndedSearcher | Experimental A marker trait to express that a |
Pattern | Experimental A string pattern. |
ReverseSearcher | Experimental A reverse searcher for a string pattern. |
Searcher | Experimental A searcher for a string pattern. |