/* package whatever; // don't place package name! */
import java.util.* ;
import java.lang.* ;
import java.util.regex.* ;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
String casoUm
= "<text><![CDATA[Casa]]></text><text>\n <![CDATA[Qualquer texto que tenha Casa no meio]]></text>" + "\n <text>Texto com Casa mas não dentro de CDATA</text>"
+ "\n <text><![CDATA[Casamento]]></text>" ;
String regex
= "(?<=CDATA\\ [)(.*?)(?=\\ ])" ;
Matcher matcher = Pattern.compile ( regex) .matcher ( casoUm) ;
if ( matcher.find ( ) ) {
System .
out .
println ( casoUm.
replaceAll ( "Casa" ,
"Edifício" ) ) ; }
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLnV0aWwucmVnZXguKjsKCi8qIE5hbWUgb2YgdGhlIGNsYXNzIGhhcyB0byBiZSAiTWFpbiIgb25seSBpZiB0aGUgY2xhc3MgaXMgcHVibGljLiAqLwpjbGFzcyBJZGVvbmUKewoJcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uCgl7CiAgICAgICAgU3RyaW5nIGNhc29VbSA9ICI8dGV4dD48IVtDREFUQVtDYXNhXV0+PC90ZXh0Pjx0ZXh0PlxuPCFbQ0RBVEFbUXVhbHF1ZXIgdGV4dG8gcXVlIHRlbmhhIENhc2Egbm8gbWVpb11dPjwvdGV4dD4iCiAgICAgICAgICAgICAgICArICJcbjx0ZXh0PlRleHRvIGNvbSBDYXNhIG1hcyBuw6NvIGRlbnRybyBkZSBDREFUQTwvdGV4dD4iCiAgICAgICAgICAgICAgICArICJcbjx0ZXh0PjwhW0NEQVRBW0Nhc2FtZW50b11dPjwvdGV4dD4iOwogICAgICAgIFN0cmluZyByZWdleCA9ICIoPzw9Q0RBVEFcXFspKC4qPykoPz1cXF0pIjsKCiAgICAgICAgTWF0Y2hlciBtYXRjaGVyID0gUGF0dGVybi5jb21waWxlKHJlZ2V4KS5tYXRjaGVyKGNhc29VbSk7CiAgICAgICAgaWYgKG1hdGNoZXIuZmluZCgpKSB7CiAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihjYXNvVW0ucmVwbGFjZUFsbCgiQ2FzYSIsICJFZGlmw61jaW8iKSk7CiAgICAgICAgfQogICAgfQp9