pub fn is_a<T, Input, Error>(arr: T) -> impl Fn(Input)where
Error: ParseError<Input>,
Input: InputTakeAtPosition,
T: FindToken<<Input as InputTakeAtPosition>::Item>,
Available on crate feature
mtls
only.Expand description
Returns the longest slice of the matches the pattern.
The parser will return the longest slice consisting of the characters in provided in the combinator’s argument.
It will return a Err(Err::Error((_, ErrorKind::IsA)))
if the pattern wasn’t met.
§Example
use nom::bytes::complete::is_a;
fn hex(s: &str) -> IResult<&str, &str> {
is_a("1234567890ABCDEF")(s)
}
assert_eq!(hex("123 and voila"), Ok((" and voila", "123")));
assert_eq!(hex("DEADBEEF and others"), Ok((" and others", "DEADBEEF")));
assert_eq!(hex("BADBABEsomething"), Ok(("something", "BADBABE")));
assert_eq!(hex("D15EA5E"), Ok(("", "D15EA5E")));
assert_eq!(hex(""), Err(Err::Error(Error::new("", ErrorKind::IsA))));