import java.util.regex.* ;
import java.lang.* ;
class Main
{
{
String str
= "STARTText blah, blah\n " + "\\ next line with more text, but the leading backslash\n " +
"\\ next line with more text, but the leading backslash\n " +
"\\ next line with more text, but the leading backslash\n " +
"foo\n " +
"bar\n " ;
Pattern p = Pattern.compile ( "(?m)^STARTText.*?(\\ r?\\ n)(?:^\\ \\ .*?\\ 1)+" ) ;
Matcher m = p.matcher ( str) ;
if ( m.find ( ) )
System .
out .
printf ( "Matched: %s%n" , m.
group ( 0 ) ) ; }
}
aW1wb3J0IGphdmEudXRpbC5yZWdleC4qOwppbXBvcnQgamF2YS5sYW5nLio7CgpjbGFzcyBNYWluCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewpTdHJpbmcgc3RyID0gIlNUQVJUVGV4dCBibGFoLCBibGFoXG4iICsgCiJcXCAgICBuZXh0IGxpbmUgd2l0aCBtb3JlIHRleHQsIGJ1dCB0aGUgbGVhZGluZyBiYWNrc2xhc2hcbiIgKyAKIlxcICAgIG5leHQgbGluZSB3aXRoIG1vcmUgdGV4dCwgYnV0IHRoZSBsZWFkaW5nIGJhY2tzbGFzaFxuIiArIAoiXFwgICAgbmV4dCBsaW5lIHdpdGggbW9yZSB0ZXh0LCBidXQgdGhlIGxlYWRpbmcgYmFja3NsYXNoXG4iICsgCiJmb29cbiIgKyAKImJhclxuIjsKClBhdHRlcm4gcCA9IFBhdHRlcm4uY29tcGlsZSgiKD9tKV5TVEFSVFRleHQuKj8oXFxyP1xcbikoPzpeXFxcXC4qP1xcMSkrIik7ICAgIApNYXRjaGVyIG0gPSBwLm1hdGNoZXIoc3RyKTsKaWYgKG0uZmluZCgpKQogICBTeXN0ZW0ub3V0LnByaW50ZigiTWF0Y2hlZDogJXMlbiIsIG0uZ3JvdXAoMCkpOwoJfQp9