/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
import java.util.regex.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
String rx
= "(?i)w(?:e{2})?k(\\d+)(?:(?:\\s*until\\s*|[ _\\/])(?:w(?:e{2})?k)?(\\d+))?"; String s
= "Soccer International wk43\nNational Geopgraphic (wk50)\nSchoolpaper wk39/wk43\nSome magazine week12 until 16\nAnother magazine wk36_38\nAnother magazine wk36_wk38"; Matcher m = Pattern.compile(rx).matcher(s);
while (m.find()) {
String replacement
= m.
group(2) == null ? "week " + m.group(1):
"week " + m.group(1) + " - week " + m.group(2);
m.appendReplacement(result, replacement);
}
m.appendTail(result);
System.
out.
println(result.
toString());
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CmltcG9ydCBqYXZhLnV0aWwucmVnZXguKjsKLyogTmFtZSBvZiB0aGUgY2xhc3MgaGFzIHRvIGJlICJNYWluIiBvbmx5IGlmIHRoZSBjbGFzcyBpcyBwdWJsaWMuICovCmNsYXNzIElkZW9uZQp7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoU3RyaW5nW10gYXJncykgdGhyb3dzIGphdmEubGFuZy5FeGNlcHRpb24KCXsKCQlTdHJpbmcgcnggPSAiKD9pKXcoPzplezJ9KT9rKFxcZCspKD86KD86XFxzKnVudGlsXFxzKnxbIF9cXC9dKSg/OncoPzplezJ9KT9rKT8oXFxkKykpPyI7IAoJCVN0cmluZyBzID0gIlNvY2NlciBJbnRlcm5hdGlvbmFsIHdrNDNcbk5hdGlvbmFsIEdlb3BncmFwaGljICh3azUwKVxuU2Nob29scGFwZXIgd2szOS93azQzXG5Tb21lIG1hZ2F6aW5lIHdlZWsxMiB1bnRpbCAxNlxuQW5vdGhlciBtYWdhemluZSB3azM2XzM4XG5Bbm90aGVyIG1hZ2F6aW5lIHdrMzZfd2szOCI7IAoJCVN0cmluZ0J1ZmZlciByZXN1bHQgPSBuZXcgU3RyaW5nQnVmZmVyKCk7CgkJTWF0Y2hlciBtID0gUGF0dGVybi5jb21waWxlKHJ4KS5tYXRjaGVyKHMpOwoJCXdoaWxlIChtLmZpbmQoKSkgewogICAgCQlTdHJpbmcgcmVwbGFjZW1lbnQgPSBtLmdyb3VwKDIpID09IG51bGwgPwogICAgCQkJCSJ3ZWVrICIgKyBtLmdyb3VwKDEpOgogICAgCQkJCSJ3ZWVrICIgKyBtLmdyb3VwKDEpICsgIiAtIHdlZWsgIiArIG0uZ3JvdXAoMik7CgkJICAgIG0uYXBwZW5kUmVwbGFjZW1lbnQocmVzdWx0LCByZXBsYWNlbWVudCk7CgkJfQoJCW0uYXBwZW5kVGFpbChyZXN1bHQpOwoJCVN5c3RlbS5vdXQucHJpbnRsbihyZXN1bHQudG9TdHJpbmcoKSk7CgoJfQp9