import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "^(?>.+\\{\\{Images from Auckland Museum\\|)(.*?)(?>\\}\\}.+)$";
final String string = "== {{int:filedesc}} == {{Artwork | description = {{en|1=At the equestrian show. A man stands in front of a stall selling radios.}} | title = (\"Ultimate\" stall) | artist = {{Creator:Tudor Washington Collins}} | date = 1938 | place of creation = | source = {{Images from Auckland Museum|section=library|object=photography|id=79483}} [https://api.aucklandmuseum.com/id/media/p/806abf5c0952f972e56bc95fed841c5031bcb9ff Photo] | accession number = 79483 (object number) | object type = | technique = Silver gelatin dry plate | dimensions = | institution = {{Institution:Auckland War Memorial Museum}} | permission = This image has been released as \"CCBY\" by Auckland Museum. For details refer to the [[Commons:Batch_uploading/AucklandMuseumCCBY|Commons project page]]. | credit line = | notes = | other_versions = <gallery> (\"Ultimate\" stall) (AM 79483-2).jpg </gallery> }} == {{int:license-header}} == {{CC-BY-4.0|1=Auckland Museum}} [[Category:Images uploaded by Fæ]] [[Category:1930s photographs in Auckland Museum]] [[Category:Tudor Washington Collins]] [[Category:Radio in Auckland Museum]] [[Category:Images from Auckland Museum]]";
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