regex_replace_all!() { /* proc-macro */ }
Expand description
Replaces all non-overlapping matches in the second argument with the value returned by the closure given as third argument.
The closure is given one or more &str
, the first one for
the whole match and the following ones for the groups.
Any optional group with no value is replaced with ""
.
Example:
let text = "Foo fuu";
let text = regex_replace_all!(
r#"\bf(?P<suffix>\w+)"#i,
text,
|_, suffix| format!("F<{}>", suffix),
);
assert_eq!(text, "F<oo> F<uu>");