Cómo reemplazar idiomáticamente ciertos caracteres en una cadena en Rust
¡Hola a todos! Acabo de empezar a aprender Rust y me encontré con un problema al trabajar con cadenas. Necesito reemplazar todas las apariciones de ciertos caracteres en una cadena por otros caracteres. Por ejemplo, tengo la cadena "hello-world_foo" y quiero reemplazar el guión y el guión bajo por espacios, para obtener "hello world foo".
En Python lo haría simplemente: `s.replace('-', ' ').replace('_', ' ')`. Pero en Rust no encuentro una forma igual de simple. Intenté usar el método `replace`, pero solo funciona con un carácter o substring a la vez:
```rust
let s = "hello-world_foo";
let result = s.replace("-", " ").replace("_", " ");
println!("{}", result); // "hello world foo"
```
Esto funciona, pero me parece no muy eficiente y no idiomático para Rust. He oído que hay expresiones regulares para reemplazar, pero parecen pesadas para una tarea tan simple. ¿Hay una forma más correcta de reemplazar varios caracteres diferentes en Rust? ¿Quizás hay un método `replace_all` o algo similar?