/* 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
{
{
final Pattern p = Pattern.compile("\"(?:\\\\.|[^\"\\\\])*\"");
String testString
= "\"Hey Topaz how are you?\" Nathan continues to take a seat and proceeds with, \"I hate that guy\""; StringBuilder message = new StringBuilder(testString);
final Matcher m = p.matcher(testString);
int cnt = 0;
int replaceCount = 0;
while (m.find()) {
int startIndex = m.start();
int endIndex = m.end() + 1;
System.
out.
println("Start: " + startIndex
); System.
out.
println("End: " + endIndex
); message.insert(startIndex + replaceCount*2, 'C');
message.insert(endIndex + replaceCount*2, 'D');
replaceCount += 1;
}
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CmltcG9ydCBqYXZhLnV0aWwucmVnZXguKjsKCi8qIE5hbWUgb2YgdGhlIGNsYXNzIGhhcyB0byBiZSAiTWFpbiIgb25seSBpZiB0aGUgY2xhc3MgaXMgcHVibGljLiAqLwpjbGFzcyBJZGVvbmUKewoJcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uCgl7CgkJZmluYWwgUGF0dGVybiBwID0gUGF0dGVybi5jb21waWxlKCJcIig/OlxcXFwufFteXCJcXFxcXSkqXCIiKTsKCQlTdHJpbmcgdGVzdFN0cmluZyA9ICJcIkhleSBUb3BheiBob3cgYXJlIHlvdT9cIiBOYXRoYW4gY29udGludWVzIHRvIHRha2UgYSBzZWF0IGFuZCBwcm9jZWVkcyB3aXRoLCBcIkkgaGF0ZSB0aGF0IGd1eVwiIjsKCQlTdHJpbmdCdWlsZGVyIG1lc3NhZ2UgPSBuZXcgU3RyaW5nQnVpbGRlcih0ZXN0U3RyaW5nKTsKCQlmaW5hbCBNYXRjaGVyIG0gPSBwLm1hdGNoZXIodGVzdFN0cmluZyk7CgkJaW50IGNudCA9IDA7CgkJaW50IHJlcGxhY2VDb3VudCA9IDA7CgkJd2hpbGUgKG0uZmluZCgpKSB7CgkJCWludCBzdGFydEluZGV4ID0gbS5zdGFydCgpOwogICAgICAgIAlpbnQgZW5kSW5kZXggPSBtLmVuZCgpICsgMTsKCQkgICAgU3lzdGVtLm91dC5wcmludGxuKCJTdGFydDogIiArIHN0YXJ0SW5kZXgpOwogICAgCQlTeXN0ZW0ub3V0LnByaW50bG4oIkVuZDogIiArIGVuZEluZGV4KTsKCQkgICAgbWVzc2FnZS5pbnNlcnQoc3RhcnRJbmRleCArIHJlcGxhY2VDb3VudCoyLCAnQycpOwogICAgICAgIAltZXNzYWdlLmluc2VydChlbmRJbmRleCArIHJlcGxhY2VDb3VudCoyLCAnRCcpOwogICAgICAgIAlyZXBsYWNlQ291bnQgKz0gMTsKCQl9CgkJU3lzdGVtLm91dC5wcmludGxuKG1lc3NhZ2UpOwoJfQp9