O que significa o operador r#""# em Rust e como usar literais de string brutas?
Olá! Comecei a estudar Rust recentemente e me deparei com uma construção estranha em um código de outra pessoa. Lá estava escrito algo como:\n\n```rust\nlet pattern = r#"^\\d+\\.\\d+\\.\\d+\\.\\d+$"#;\nlet json = r#"{"name": "John", "age": 30}"#;\n```\n\nEu vejo que antes da string tem a letra `r`, e depois os símbolos `#"` e `"#`. O que isso significa? Eu sei que em Rust literais de string são denotados por aspas duplas `"..."`, e o símbolo `\\` é usado para escaping. Mas aqui tem uma mágica com `#`.\n\nO que me confunde especialmente é que dentro dessa string há aspas duplas normais. Em uma string normal, eu teria que escrever `\\"` para escapar, mas aqui as aspas estão como estão. E esses `#` nas bordas — para que servem? Posso ficar sem eles?\n\nTentei escrever apenas `r"..."`, mas o compilador reclama.