Ваш оригинальный шаблон должен быть записан как
let re = Regex::new(r#"(\d{1,3}(?:\.\d{1,3}){3}) (\w+|-) (\w+|-) \[(.*?)\] "(\w+) (.*?) (HTTPS?)/([0-9]\.[0-9])" ([0-9]+) ([0-9]+) "(\w+|-)" "(.*?)""#).unwrap();
Текущий шаблон:
let re = Regex::new(r#"123 "(\w+)""#).unwrap();
Короче говоря, все \\""
в вашем шаблоне должны выглядеть как "
,И убедитесь, что шаблон находится внутри r#"
и "#
.
Пожалуйста, обратитесь к Ссылка на необработанные строковые литералы Rust :
Необработанные строковые литералы делаютне обрабатывать никаких побегов.Они начинаются с символа U+0072
(r
), за которым следует ноль или более символов U+0023
(#
) и U+0022
(двойная кавычка). тело необработанной строки может содержать любую последовательность символов Unicode и заканчивается только другим символом U+0022
(двойная кавычка), за которым следует то же количество символов U+0023
(#
), которое предшествоваловводный U+0022
(двойная кавычка) символ.