G
Guest
Gast
Hallo ,
ich hänge schon wieder bei einem Regex fest.
Ich krieg es einfach nicht hin, dass Pattern so umzuformulieren, dass nur die Leerzeichen zwischen end Tags entfernt und nicht solche, die sich innerhalb eines schließenden und eines neuen tags befinden. Kann mir jemand helfen. Mfg Maik
ich hänge schon wieder bei einem Regex fest.
Code:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexTest2 {
public static void main(String args []){
Pattern pattern = Pattern.compile(">\\s+<");
//alle leerzeichen zwischen end tags entfernen
String test = "</font> [/i] [/b]";
//leerzeichen zwischen [/b] und [i] sollen nicht entfernt werden
String test2 = "[b]ein[/b] [i]test[/i]";
Matcher matcher = pattern.matcher(test);
Matcher matcher2 = pattern.matcher(test2);
if (matcher.find()){
System.out.println("alt:\t "+test);
System.out.println("neu:\t "+test.replaceAll(pattern.pattern(), "><"));
}
System.out.println("\n");
if(matcher2.find()){
System.out.println("alt:\t "+test2);
//falsch
System.out.println("neu:\t "+test2.replaceAll(pattern.pattern(), "><"));
}
}
}
Ich krieg es einfach nicht hin, dass Pattern so umzuformulieren, dass nur die Leerzeichen zwischen end Tags entfernt und nicht solche, die sich innerhalb eines schließenden und eines neuen tags befinden. Kann mir jemand helfen. Mfg Maik