RegEx Syntax - ich verstehe sie einfach nicht!

Status
Nicht offen für weitere Antworten.

spidermobile

Bekanntes Mitglied
Hallo Javagemeinde,

mit der Syntax von RegEx stehe ich auf Kriegsfuß. Ich möchte z.B. alle äöü mit ae oe und ue ersetzen. Leider klappt das nicht.
Für einen Tipp zum verstehen der RegEx Eyntag wäre ich sehr dankbar.

Code:
public class TestRegEx {

	private	String s;

	public TestRegEx() {
		s = "1ä2ö3ü4A5Ö6Ü7ß8";
		s.replaceAll("[äöuÄÖÜß]","[aeoeueAeOeUe]");
		System.out.println(s);
	}

	public static void main(String[] args) {
		TestRegEx testRegEx = new TestRegEx();
	}

}
 
lol! 😀
Strings sind unveränderlich!
Code:
s=s.replaceAll("regex","blupp");
Du musst das aber wohl für jedes Sonderzeichen extra machen...
 
Hallo,

in Deinem Fall sind 7 Durchläufe mit replaceAll keine gute Idee (Performance).
Nimm lieber einen StringBuffer und geh den Originalstring Zeichen für Zeichen durch
und kopiere. So reicht ein Durchlauf. Das ist wesentlich schneller.

Falls Du an den RegExp weiter interessiert bist, hier noch ein nützlicher Link für den rudimentären Einstieg:
http://http://www.tekromancer.com/perl2/7.html
Das ist zwar für Perl, aber die Beispiele dort funktionieren auch mit Java, nur dass man das Pattern nicht durch Slashes ('/') begrenzen muss.

Gruß,
Karl
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben