String content="全国人民都幸福";
StringBuffer resultBuffer = new StringBuffer();
Pattern outerPattern = Pattern.compile("全国|幸福");
Pattern innerPattern = Pattern.compile("幸福");
Matcher outerMatcher = outerPattern.matcher(content);
while(outerMatcher.find()){
String innerContent = outerMatcher.group();
StringBuffer innerBuffer = new StringBuffer();
Matcher innerMatcher = innerPattern.matcher(innerContent);
while(innerMatcher.find()){
innerMatcher.appendReplacement(innerBuffer, "不幸福");
}
innerMatcher.appendTail(innerBuffer);
outerMatcher.appendReplacement(resultBuffer, innerBuffer.toString());
}
outerMatcher.appendTail(resultBuffer);
System.out.println(resultBuffer);
}
StringBuffer resultBuffer = new StringBuffer();
Pattern outerPattern = Pattern.compile("全国|幸福");
Pattern innerPattern = Pattern.compile("幸福");
Matcher outerMatcher = outerPattern.matcher(content);
while(outerMatcher.find()){
String innerContent = outerMatcher.group();
StringBuffer innerBuffer = new StringBuffer();
Matcher innerMatcher = innerPattern.matcher(innerContent);
while(innerMatcher.find()){
innerMatcher.appendReplacement(innerBuffer, "不幸福");
}
innerMatcher.appendTail(innerBuffer);
outerMatcher.appendReplacement(resultBuffer, innerBuffer.toString());
}
outerMatcher.appendTail(resultBuffer);
System.out.println(resultBuffer);
}