2017-06-27 4 views
0

ich diesen regulären Ausdruck haben:Regulärer Ausdruck alle Zeichen außer Buchstaben oder Ziffern wählen

^[a-zA-Z0-9] 

Ich versuche, alle Zeichen außer Ziffern oder Buchstaben zu wählen, aber wenn ich dies testen, nur das erste Zeichen abgestimmt .

Als ich

[a-zA-Z0-9] 

die Spiele verwenden sind richtig Ziffern und Buchstaben. Ich muss es negieren, aber die ^ funktioniert nicht.

+0

'^' muss innerhalb der Zeichengruppe sein, um zu negieren, z. '[^ a-zA-Z]' – marekful

+0

Mögliches Duplikat von [Zeichen in regulärem Ausdruck negieren] (https://stackoverflow.com/questions/1763071/negate-characters-in-regular-expression) – Soviut

Antwort

1

Im Folgenden finden Sie eine kurze Zusammenfassung von Regexps und wie Sie mithilfe der folgenden Befehle einen Abfrage-Satz gruppieren können. In Ihrem Fall platzieren Sie die ^ innerhalb der [a-zA-Z0-9], um das gewünschte Ergebnis zu erzielen.

. Single character match except newline 
    "." Anything in quotations marks literally 
    A* Zero or more occurrences of A 
    A+ One or more occurrences of A 
    A? Zero or one occurrence of A 
    A/B Match A only if followed by B 
() series of regexps grouped together 
    [] Match any character in brackets 
    [^] Do not match any character in brackets 
    [-] Define range of characters to match 
^ Match beginning of new line 
    $ Match end of a line 
    {} Cardinality of pattern match set 
    \ Escapes meta-characters 
    | Disjunctive matches, or operation match 
1

negieren Sie die ^ in den Klammern setzen müssen:

[^a-zA-Z0-9] 
1

Inbetriebnahme die ^ beim Start des Ausdrucks bedeutet „vom Anfang der Zeichenfolge suchen“. Sie müssen es in die eckigen Klammern setzen, um es zu negieren.

Verwandte Themen