pub fn escaped<I, Error, F, G>(
normal: F,
control_char: char,
escapable: G,
) -> impl Parser<I, Output = I, Error = Error>
Expand description
Matches a byte string with escaped characters.
- The first argument matches the normal characters (it must not accept the control character)
- The second argument is the control character (like
\
in most languages) - The third argument matches the escaped characters
ยงExample
use nom::bytes::streaming::escaped;
use nom::character::streaming::one_of;
fn esc(s: &str) -> IResult<&str, &str> {
escaped(digit1, '\\', one_of("\"n\\"))(s)
}
assert_eq!(esc("123;"), Ok((";", "123")));
assert_eq!(esc("12\\\"34;"), Ok((";", "12\\\"34")));