424 Stimmen

Regex - Enthält bestimmte Zeichen nicht

Ich benötige eine Regex, die übereinstimmt, wenn irgendwo in einem Satz NICHT entweder < oder > steht.

Wenn entweder < oder > in der Zeichenkette enthalten sind, muss er false zurückgeben.

Ich hatte damit einen Teilerfolg, aber nur, wenn meine < > am Anfang oder Ende stehen:

(?!<|>).*$

Ich verwende .Net, falls das einen Unterschied macht.

Vielen Dank für die Hilfe.

684voto

Ned Batchelder Punkte 342778
^[^<>]+$

Das Caret in der Zeichenklasse ( [^ ) bedeutet "match anything but", d.h. Anfang der Zeichenkette, dann ein oder mehrere von anything except < y > und dann das Ende der Zeichenkette.

102voto

Alin Purcaru Punkte 41895

Hier ist es:

^[^<>]*$

Damit wird auf eine Zeichenkette getestet, die keine < und keine >

Wenn Sie auf eine Zeichenkette testen wollen, die möglicherweise < y > , sondern auch etwas anderes haben müssen, das Sie einfach verwenden sollten

[^<>] (or ^.*[^<>].*$)

Wo [<>] bedeutet einer der < o > y [^<>] bedeutet alles, was nicht von < o > .

Und natürlich die obligatorische lien .

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X