Hallo Java-Forum,
ich hab grad eine kleine Gedankenblockade, bei einem (eigentlich) einfach wirkendem RegEx-Ausdruck:
Ich möchte mit diesem RegEx-Ausdruck bestimmte Schlüsselwörter in einem String ersetzen, allerdings soll eine Ersetzung nur erfolgen, wenn das Schlüsselwort nicht in einem anderen Wort steht.
D.h.: wenn ich zum Beispiel nach dem Schlüsselwort "ext" suchen möchte, so soll es nur gefunden werden wenn es alleine steht:
"Der Text ist sehr lang" -> hier nicht
"Der ext erne Stromschalter" -> hier schon
Das klappte soweit auch schon ganz gut, allerdings liefert mir das Pattern bei folgendem Text:
"Der ext erne"
der group(0) folgendes: " ext ".
Ich bräuchte aber nur das Schlüsselwort :bahnhof:
weiß von euch jemand wo ich auf dem Schlauch stehe?
greetz
Woozaman
ich hab grad eine kleine Gedankenblockade, bei einem (eigentlich) einfach wirkendem RegEx-Ausdruck:
Java:
Pattern.compile("(?:^|\\p{Space}*)" + Pattern.quote("ext") + "(?:$|\\p{Space}*)");
Ich möchte mit diesem RegEx-Ausdruck bestimmte Schlüsselwörter in einem String ersetzen, allerdings soll eine Ersetzung nur erfolgen, wenn das Schlüsselwort nicht in einem anderen Wort steht.
D.h.: wenn ich zum Beispiel nach dem Schlüsselwort "ext" suchen möchte, so soll es nur gefunden werden wenn es alleine steht:
"Der Text ist sehr lang" -> hier nicht
"Der ext erne Stromschalter" -> hier schon
Das klappte soweit auch schon ganz gut, allerdings liefert mir das Pattern bei folgendem Text:
"Der ext erne"
der group(0) folgendes: " ext ".
Ich bräuchte aber nur das Schlüsselwort :bahnhof:
weiß von euch jemand wo ich auf dem Schlauch stehe?
greetz
Woozaman