regulärer Ausdruck keine Zeichen

8

Ich habe diesen regulären Ausdruck

%Vor%

sollte mit etwas wie übereinstimmen test, (mit einem Leerzeichen nach dem Komma)

Wie ändere ich den Regex-Ausdruck, so dass, wenn nach dem Leerzeichen Zeichen vorhanden sind, diese nicht übereinstimmen. Zum Beispiel wenn ich:

hätte %Vor%

Ich suche etwas Ähnliches wie

%Vor%

Prost

    
Decrypter 03.10.2011, 14:01
quelle

3 Antworten

16

Verwenden Sie den folgenden regulären Ausdruck:

%Vor%

Erläuterung:

  • ^ entspricht dem Anfang der Zeichenfolge.
  • [A-Za-z]* entspricht 0 oder mehr Buchstaben (Groß- / Kleinschreibung wird nicht beachtet) - ersetzen Sie * durch + , um 1 oder mehr Buchstaben zu benötigen.
  • , entspricht einem Komma, gefolgt von einem Leerzeichen.
  • $ stimmt mit dem Ende der Zeichenfolge überein. Wenn also nach dem Komma und dem Leerzeichen etwas fehlt, wird die Übereinstimmung fehlschlagen.

Wie bereits erwähnt, sollten Sie angeben, welche Sprache Sie verwenden, wenn Sie eine Regex-Frage stellen, da es viele verschiedene Varianten gibt, die ihre eigenen Eigenheiten haben.

    
Donut 03.10.2011, 14:05
quelle
1
%Vor%

Der Unterschied zwischen meinem und Donut ist, dass er , und fail für den leeren String trifft, meins wird mit dem leeren String übereinstimmen und für , fehlschlagen. (und das ist mehr case-unsensitive als meins. Mit mir müssen Sie die Groß- / Kleinschreibung der Optionen Ihrer Regex-Funktion hinzufügen, aber es ist wie Ihr Beispiel)

    
xanatos 03.10.2011 14:08
quelle
0

Ich bin mir nicht sicher, welche Regex-Engine / Sprache Sie verwenden, aber es gibt oft so etwas wie eine negative Zeichengruppe [^a-z] , die "alles andere als ein Zeichen" bedeutet.

    
kongo2002 03.10.2011 14:07
quelle

Tags und Links