// 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#"(["'])(?:(?=(\\?))\2.)*?\1(*SKIP)(*F)|(\[([a-zA-Z]*)\])"#).unwrap();
let string = "$output = \"<input name='variable[key]' has to be preserved as it is.\";
$output = 'Even this string variable[key] has to be preserved as it is.';
$variable[key] = \"WhatElse\";
$result = $wso->RSLA(\"7050\", $vegalot, \"600\", \"WFID_OK_WEB\",\"1300\", $_POST[username]);
if ($result[ECD] != 0) {
if ($line==\"AAAA\" && in_array(substr($wso->lot,0,7),$lot_aaaa_list) && $lot[wafer][25]) {";
let substitution = "['$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/