import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "[\\#(/)_\\-\\=\\!\\:]";
final String string = "#/usr/bin/python3\n"
+ "from bisect import bisect_right\n\n"
+ "def binary_search(vector,x):\n"
+ " i = bisect_right(vector,x)\n"
+ " if i != len(vector)+1 and vector[i-1] == x:\n"
+ " return i-1\n"
+ " return -1\n"
+ " \n"
+ "def is_prime(vector,number):\n"
+ " return 1 if binary_search(vector,number) != -1 else 0 \n"
+ " \n"
+ "def prime_vector(num):\n"
+ " ret = []\n"
+ " for a in range(2,num+1):\n"
+ " if a == 2 or a == 3 or a == 5 or a == 7 or a == 11:\n"
+ " ret.append(a)\n"
+ " elif a %2 == 0 or a%3 == 0 or a%5 == 0 or a%7==0 or a%11 == 0:\n"
+ " continue\n"
+ " else:\n"
+ " ret.append(a)\n"
+ " return ret\n"
+ " \n"
+ "number = int(input())\n"
+ "prime = prime_vector(number)\n"
+ "ret = []\n"
+ "p = 0\n\n"
+ "while number:\n"
+ " if is_prime(prime,number):\n"
+ " ret.append(number)\n"
+ " break\n"
+ " elif number%prime[p] == 0:\n"
+ " ret.append(prime[p])\n"
+ " number = int(number / prime[p])\n"
+ " else:\n"
+ " p = p + 1\n"
+ " \n"
+ "for a in range((len(ret))):\n"
+ " print(ret[a],end=\" \")\n";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);
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