47 Stimmen

Zahlen nicht erlaubt (0-9) - Regex-Ausdruck in javascript

Ich möchte ein Regex-Muster, das mir beliebige Zeichen erlaubt, aber keine (0-9) Zahlen zulässt?

88voto

jjnguy Punkte 132790

Einfach:

/^([^0-9]*)$/

Dieses Muster entspricht einer beliebigen Anzahl von Zeichen, die nicht 0 über 9 .

Ich empfehle einen Blick auf http://regexpal.com/ . Damit können Sie ganz einfach eine Regex testen.

78voto

SLaks Punkte 832502

Zum Beispiel so: ^[^0-9]+$

Erläuterung:

  • ^ stimmt mit dem Anfang der Zeichenkette überein
  • [^...] mit allem übereinstimmt, was ist nicht innerhalb
  • 0-9 bedeutet ein beliebiges Zeichen zwischen 0 und 9
  • + mit einer oder mehreren der vorhergehenden Sachen übereinstimmt
  • $ stimmt mit dem Ende der Zeichenkette überein

21voto

Pranav Singh Punkte 14615

\D eine Nicht-Ziffer ist, und somit \D* ist eine beliebige Anzahl von Nicht-Ziffern in einer Reihe. Die gesamte Zeichenfolge sollte also übereinstimmen *`^\D$` .**

Überprüfen Sie http://rubular.com/r/AoWBmrbUkN Es funktioniert perfekt.

Sie können auch anprobieren http://regexpal.com/ O http://www.regextester.com/

3voto

user14793130 Punkte 21

Es ist besser, sich auf Regexps wie ^[^0-9]+$ und nicht auf Regexps wie [a-zA-Z]+ da Ihre Anwendung vielleicht eines Tages Benutzereingaben von Benutzern akzeptiert, die eine Sprache wie Polnisch sprechen, in der viel mehr Zeichen akzeptiert werden sollten als nur [a-zA-Z]+ . Verwendung von ^[^0-9]+$ können solche unerwünschten Nebenwirkungen leicht ausgeschlossen werden.

1voto

Edgedudette Punkte 51

Sie könnten so etwas in Javascript versuchen:
var regex = /[^a-zA-Z]/g;

und haben ein Keyup-Ereignis.
$("#nameofInputbox").value.replace(regex, "");

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