import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "((?:\\\"[^\"]*)\\s*\\\")|((?:\\'[^']*)\\s*\\')|((?:\\`[^`]*)\\s*\\`)|((?:\\b|\\s){1}const\\s{1})|((?:\\b|\\s){1}function\\s{1})|((?:\\b|\\s){1}let\\s{1})|(?:\\/\\/.*$)|(?:\\/\\*+(?:.|\\s)*\\*\\/)|\\s*";
final String string = "function myFunction() {\n"
+ " let carName = \"Volvo\";\n"
+ " // code here CAN use carName\n"
+ "const test = 'string with \"quoted substring\"'; let airplane = 'fly'\n"
+ "(\"and another string th'' as' asd 'ere\")\n"
+ "labelForStrings: {\n"
+ " `t'is a \"string\"`\n"
+ " }\n"
+ "}\n"
+ "/*asd *****\n"
+ "* 324 @*l;;?\\\\\\\n"
+ "* multiline comment \n\n\n"
+ "*** /\n"
+ "*/";
final String subst = "$1$2$3$4$5$6";
final Pattern pattern = Pattern.compile(regex, Pattern.CASE_INSENSITIVE | Pattern.MULTILINE);
final Matcher matcher = pattern.matcher(string);
// The substituted value will be contained in the result variable
final String result = matcher.replaceAll(subst);
System.out.println("Substitution result: " + 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 Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html