RegEx Generator, vom String zum RegEx?

tequila slammer

Erfahrenes Mitglied
Ich bin auf der Suche nach einem Generator, der mir aus der Zeichenkette
+49.12345.1234567 den passenden RegEx erstellt. Irgendwie blicke ich da nicht durch, gedanklich müsste das so aussehen: +[1-9,2].[0-9,5].[0-9,10].

Sprichwörtlich also: es muss ein + an erster Stelle sein, anschließend dürfen Zahlen von 1-9 für eine Länge von 2. Anschließend ein Punkt usw..

Ich habe mir darauf hin folgendes gebaut: [\+][0-9,2][\.][0-9]{2,5}[\.][0-9]{3,10}

Kann mir da jemand helfen?
 
Zuletzt bearbeitet:
Ach so ich hatte vergessen zu schreiben, dass damit quasi eine Telefonnummer einen bestimmten Aufbau vorweisen soll.

@Masterclavat: Deine Lösung sieht aus wie meine, nur das du ein die eckigen Klammern um die Zeichen + und . weggelassen hast. Hat das einen Grund?
 
Ah, ok. Ich stelle nun fest, dass der grundsätzliche Aufbau stimmt, ich aber auch Buchstaben in der letzten Sequenz( [0-9]{3,10} ) eingeben kann?
 
Hi.

So einen Generator kann es nicht geben. Er müßte ja quasi raten welches Format mit deinem Beispielstring gemeint sein könnte. (trivial wäre es einen reg. Ausdruck zu generieren, der *genau* mit dem Beispielstring übereinstimmt).

Grundsätzlich: entweder du entwertest Metazeichen mit einem Backslash:

\.

oder du notierst das Metazeichen in einer Zeichenklasse:

[.]

Eine Kombination aus beidem ist unnötig.

[a-z0-9]{3,10}?

Gruß
 
Sorry das ich erst jetzt wieder antworten kann. Vielen Dank für die Hinweise zum Thema RegEx.
@deepthroat: [a-z0-9] erlaubt explizit Zeichen von a-z und Zahlen von 0-9. Ich möchte aber nur Zahlen zulassen.
 
Sorry das ich erst jetzt wieder antworten kann. Vielen Dank für die Hinweise zum Thema RegEx.
@deepthroat: [a-z0-9] erlaubt explizit Zeichen von a-z und Zahlen von 0-9. Ich möchte aber nur Zahlen zulassen.
Du widersprichst dir irgendwie selbst:
tequila slammer hat gesagt.:
ich aber auch Buchstaben in der letzten Sequenz( [0-9]{3,10} ) eingeben kann?
Gruß
 
Ich widerspreche mir nicht.
Aha, dann hast du dich aber etwas ungenau ausgedrückt.

Vermutlich verwendest du die Match Methode. Diese führt allerdings (anders als ihr Name vermuten läßt) eine Suche und keinen Match durch.

Du mußt den reg. Ausdruck "verankern" und sicherstellen, das der gesamte String übereinstimmen muss, und nicht nur irgendein Teilstring.
Code:
^\+[1-9]{2}\.[1-9]{5}\.[1-9]{3,10}$
Gruß
 

Neue Beiträge

Zurück