import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "<script\\b[^<]*(?:(?!<\\/script>)<[^<]*)*<\\/script\\s*>";
final String string = "So, let’s imagine that we have to check a text field, and there’s no particular information about it in project specifications.\n\n"
+ "In this case, it’s possible to do the following:\n\n"
+ "Click on the Submit button without previous text field filling.\n"
+ "Click on the space bar a few times, and then click on the Submit button.\n"
+ "Analyze how many characters you can enter in the field, and then press the Submit button.\n"
+ "Enter the minus sign and as many numbers as you can, and then tap Submit.\n"
+ "Enter all the possible special symbols and click Submit. If you see a message with an error, try to analyze it.\n"
+ "Try to enter the symbols that don’t technically correspond with ASCII, different emoji icons, and click Submit. If you see a message with an error, try to analyze it.\n"
+ "Try the features of the cross-site scripting. For this, you should enter such a script: <SCRIPT>alert(“I hacked this!”)</SCRIPT>. If there is a pop-up after clicking Submit, it means that this field is vulnerable to XSS attack (cross-site scripting attack).\n"
+ "Check if it’s possible to use SQL injections. Enter FOO’); DROP TABLE USERS. But don’t do this with databases of those sites that are in production.";
final Pattern pattern = Pattern.compile(regex, Pattern.CASE_INSENSITIVE);
final Matcher matcher = pattern.matcher(string);
while (matcher.find()) {
System.out.println("Full match: " + matcher.group(0));
for (int i = 1; i <= matcher.groupCount(); i++) {
System.out.println("Group " + i + ": " + matcher.group(i));
}
}
}
}
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