// include the latest version of the regex crate in your Cargo.toml
extern crate regex;
use regex::Regex;
fn main() {
let regex = Regex::new(r"(?m)<(script|style)((?:(?!src|nonce).)*?)>").unwrap();
let string = "<!DOCTYPE html>
<html class=\"no-js\" lang=\"en-US\">
<script>window._wpemojiSettings = {\"baseUrl\":\"https:\\/\\/s.w.org\\/images\\/core\\/emoji\\/13.0.0\\/72x72\\/\",\"ext\":\".png\",\"svgUrl\":\"https:\\/\\/s.w.org\\/images\\/core\\/emoji\\/13.0.0\\/svg\\/\",\"svgExt\":\".svg\",\"source\":{\"wpemoji\":\"https:\\/\\/localhost:32810\\/wp-includes\\/js\\/wp-emoji.js?ver=5.6-alpha-48683-src\",\"twemoji\":\"https:\\/\\/localhost:32810\\/wp-includes\\/js\\/twemoji.js?ver=5.6-alpha-48683-src\"}};
} );</script>
<style>img.emoji {padding: 0 !important;}</style>
<style id='twentytwenty-style-inline-css'>.color-accent{ color: #cd2653; }</style>
<script src='https://localhost:32810/wp-content/themes/twentytwenty/assets/js/index.js?ver=1.5' id='twentytwenty-js-js' async></script>
<script>document.documentElement.className = document.documentElement.className.replace( 'no-js', 'js' );</script>
<style>.recentcomments a{display:inline !important;padding:0 !important;margin:0 !important;}</style>
<style media=\"print\">#wpadminbar { display:none; }</style>
<style media=\"screen\">html { margin-top: 32px !important; }</style>
</head>
<body>
<script test>(function() {var request; b[c] = b[c].replace( rcs, ' ' );}());</script>
<script src='https://localhost:32810/wp-includes/js/hoverintent-js.min.js?ver=2.2.1' id='hoverintent-js-js'></script>
<script src='https://localhost:32810/wp-includes/js/admin-bar.js?ver=5.6-alpha-48683-src' id='admin-bar-js'></script>
<script src='https://localhost:32810/wp-includes/js/wp-embed.js?ver=5.6-alpha-48683-src' id='wp-embed-js'></script>
<script test>var t, e = location.hash.substring(1);</script>
</body>
</html>";
let substitution = "<$1 nonce=\"test\"$2>";
// result will be a String with the substituted value
let result = regex.replace_all(string, substitution);
println!("{}", result);
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Rust, please visit: https://docs.rs/regex/latest/regex/