import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main {
"like \n"+
"to "+
"eat "+
"but "+
"I "+
"don't "+
"like "+
"to "+
"eat "+
"everyone's "+
"food "+
"'' '''' '.' ' "+
"or "+
"they'll "+
"starv'e'";
String regex
= "('\\w+)|(\\w+'\\w+)|(\\w+')|(\\w+)"; Matcher matcher = Pattern.compile(regex).matcher(candidate);
while (matcher.find()) {
System.
out.
println("> matched: `" + matcher.
group() + "`"); }
}
}
aW1wb3J0IGphdmEudXRpbC5yZWdleC5NYXRjaGVyOwppbXBvcnQgamF2YS51dGlsLnJlZ2V4LlBhdHRlcm47CgpwdWJsaWMgY2xhc3MgTWFpbiB7CiAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nIGFyZ3NbXSkgdGhyb3dzIEV4Y2VwdGlvbiB7CiAgICBTdHJpbmcgY2FuZGlkYXRlID0gIkkgXG4iKwogICAgICAgICJsaWtlIFxuIisKICAgICAgICAidG8gIisKICAgICAgICAiZWF0ICIrCiAgICAgICAgImJ1dCAiKwogICAgICAgICJJICIrCiAgICAgICAgImRvbid0ICIrCiAgICAgICAgImxpa2UgIisKICAgICAgICAidG8gIisKICAgICAgICAiZWF0ICIrCiAgICAgICAgImV2ZXJ5b25lJ3MgIisKICAgICAgICAiZm9vZCAiKwogICAgICAgICInJyAgJycnJyAgJy4nICcgIisKICAgICAgICAib3IgIisKICAgICAgICAidGhleSdsbCAiKwogICAgICAgICJzdGFydidlJyI7CgogICAgU3RyaW5nIHJlZ2V4ID0gIignXFx3Kyl8KFxcdysnXFx3Kyl8KFxcdysnKXwoXFx3KykiOwogICAgTWF0Y2hlciBtYXRjaGVyID0gUGF0dGVybi5jb21waWxlKHJlZ2V4KS5tYXRjaGVyKGNhbmRpZGF0ZSk7CiAgICB3aGlsZSAobWF0Y2hlci5maW5kKCkpIHsKICAgICAgU3lzdGVtLm91dC5wcmludGxuKCI+IG1hdGNoZWQ6IGAiICsgbWF0Y2hlci5ncm91cCgpICsgImAiKTsKICAgIH0KICB9Cn0=