import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "\\d{1,3}\\.\\s[a-zA-Z\\d\\?\\.\\s].+$\\n\\s(a?\\)\\s[a-zA-Z].+).+\\n\\s(b?\\)\\s[A-Za-z].+).+\\n\\s(c\\).[a-zA-Z].+)";
final String string = "617. What would you like to eat for lunch? …, I don’t mind.\n"
+ " a) Nothing\n"
+ " b) Anything\n"
+ " c) Something\n"
+ "618. Where do you want to go on holiday? … with a beach.\n"
+ " a) Somewhere\n"
+ " b) Nowhere\n"
+ "613. You look familiar. Haven’t I seen you … before?\n"
+ " a) nowhere\n"
+ " b) anywhere\n"
+ " c) somewhere\n"
+ "614. She left the room without saying … .\n"
+ " a) nothing\n"
+ " b) anything\n"
+ " c) everything\n"
+ "615. I have never been … more beautiful than Thailand.\n"
+ " a) somewhere\n"
+ " b) nowhere\n"
+ " c) anywhere\n"
+ "616. Who was at the party? …, so something very bad must have happened.\n"
+ " a) No one\n"
+ " b) Anyone\n"
+ " c) Everyone\n"
+ "617. What would you like to eat for lunch? …, I don’t mind.\n"
+ " a) Nothing\n"
+ " b) Anything\n"
+ " c) Something\n"
+ "618. Where do you want to go on holiday? … with a beach.\n"
+ " a) Somewhere\n"
+ " b) Nowhere\n"
+ " c) Anywhere\n"
+ "619. I have … to say to you. Goodbye!\n"
+ " a) nothing\n"
+ " b) everything\n"
+ " c) something\n"
+ "620. I felt so good being on stage. I was sure that … was looking at me.\n"
+ " a) someone\n"
+ " b) everyone\n"
+ " c) no one\n"
+ "621. Can you please … some money until next week?\n"
+ " a) lend \n"
+ " b) borrow\n"
+ " c) give\n"
+ "622. I decided to invest in the commodities as the … on offer from bank was extremely low.\n"
+ " a) tax \n"
+ " b) rent \n"
+ " c) interest\n"
+ "623. Many retailers refuse to exchange purchases unless you can show them your … .\n"
+ " a) receipt\n"
+ " b) bill\n"
+ " c) Anywhere\n"
+ "619. I have … to say to you. Goodbye!\n"
+ " a) nothing";
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