Ich muss eine reg ex finden, die nur alphanumerische Zeichen zulässt. Bisher funktioniert jeder, den ich versuche, nur, wenn die Zeichenfolge alphanumerisch ist, dh sowohl einen Buchstaben als auch eine Zahl enthält. Ich möchte nur eine, die beides erlaubt und nicht beides erfordert.
javascript
regex
Benutzer
quelle
quelle
[^\W_]
aber[a-z0-9]
/ i ist ein offensichtlicher Weg.Wenn Sie ein ersetztes Ergebnis zurückgeben möchten, funktioniert dies:
Dies würde zurückkehren:
Beachten Sie, dass das gi notwendig ist, weil es global (nicht nur bei der ersten Übereinstimmung) und unabhängig von Groß- und Kleinschreibung bedeutet, weshalb ich az anstelle von a-zA-Z habe. Und das ^ in den Klammern bedeutet "alles, was nicht in diesen Klammern steht".
WARNUNG: Alphanumerisch ist großartig, wenn Sie genau das möchten. Wenn Sie dies jedoch auf einem internationalen Markt wie dem Namen oder dem geografischen Gebiet einer Person verwenden, müssen Sie Unicode-Zeichen berücksichtigen, was hier nicht der Fall ist. Wenn Sie beispielsweise einen Namen wie "Âlvarö" haben, wird dieser zu "lvar".
quelle
Verwenden Sie das Wort Zeichenklasse. Folgendes entspricht a
^[a-zA-Z0-9_]+$
:Erläuterung:
Verwenden
/[^\w]|_/g
Sie diese Option, wenn Sie den Unterstrich nicht abgleichen möchten.quelle
Der obige reguläre Ausdruck erlaubt Leerzeichen neben einer Zeichenfolge und schränkt Sonderzeichen ein. Er erlaubt nur Az, AZ, 0-9, Leerzeichen, Unterstrich und Bindestrich.
quelle
oder, wenn Sie mindestens ein Zeichen möchten:
Eckige Klammern geben eine Reihe von Zeichen an. ^ ist der Beginn der Eingabe. $ ist das Ende der Eingabe (oder Newline, abhängig von Ihren Optionen). \ s ist Leerzeichen.
Das Leerzeichen davor und danach ist optional.
Die Klammern sind der Gruppierungsoperator, mit dem Sie die gewünschten Informationen extrahieren können.
BEARBEITEN: Ich habe meine fehlerhafte Verwendung des Zeichensatzes \ w entfernt.
quelle
Anstatt nach einer gültigen alphanumerischen Zeichenfolge zu suchen, können Sie dies indirekt erreichen, indem Sie die Zeichenfolge auf ungültige Zeichen überprüfen. Überprüfen Sie dazu, ob alles mit dem Komplement der gültigen alphanumerischen Zeichenfolge übereinstimmt .
Hier ist ein Beispiel:
Beachten Sie den logischen Nicht-Operator bei
isValid
, da ich teste, ob die Zeichenfolge falsch ist und nicht, ob sie gültig ist.quelle
Das wird funktionieren
Es werden nur alphanumerische Zeichen akzeptiert:
Testfälle pased:
oder
Sie können diesen auch ausprobieren. Dieser Ausdruck erfüllte mindestens eine Zahl und ein Zeichen und keine anderen Sonderzeichen
in eckigen kann testen wie:
PLUNKER DEMO
Referenz: Regulärer Ausdruck für alphanumerisch in Angularjs
quelle
Erweitern Sie den String-Prototyp für Ihr gesamtes Projekt
Verwendung:
quelle
Geben Sie diesen Code in Ihr SCRATCHPAD ein und sehen Sie sich die Aktion an.
quelle
Es scheint, als hätten viele Benutzer bemerkt, dass diese regulären Ausdrücke mit ziemlicher Sicherheit fehlschlagen werden, wenn wir nicht ausschließlich auf Englisch arbeiten. Aber ich denke, es gibt einen einfachen Weg, der nicht so begrenzt wäre.
Alle Zeichen, die in diesen Zeichenfolgen übereinstimmen, sind definitiv nicht alphabetisch.
Optional können Sie auch Zahlen erkennen, indem Sie nur nach den Ziffern 0 bis 9 suchen.
quelle
Versuchen Sie dies ... Ersetzen Sie Ihre Feld-ID durch #name ... az (a bis z), AZ (A bis Z), 0-9 (0 bis 9)
quelle
JAVASCRIPT akzeptiert nur NUMMERN, ALPHABETEN und SONDERZEICHEN
quelle
Noch besser als
Gayan Dissanayake
darauf hingewiesen.Jetzt
^[a-zA-Z0-9]+$
kann dargestellt werden als^\w+$
quelle
Ich habe eine Zeichenfolge ähnlich Samsung Galaxy A10s 6,2-Zoll (2 GB, 32 GB ROM) Android 9.0, (13MP + 2MP) + 8MP Dual-SIM 4000mAh 4G LTE Smartphone - Schwarz (BF19)
Unten ist was ich getan habe:
Beachten Sie ließ ich
,._-
dann verwendensplit()
undjoin()
ersetzen,
zu-
und Raum-
sind.Am Ende bekam ich so etwas:
samsung-galaxy-a10s-6.2-inch-2gb-32gb-rom-android-9.0-13mp-2mp-8mp-dual-sim-4000mah-4g-lte-smartphone-black-bf19-20
was ich wollte.Es könnte eine bessere Lösung geben, aber ich fand, dass dies für mich gut funktioniert.
quelle
Speichern Sie diese Konstante
Verwenden Sie jetzt zum Überprüfen des Teils .match ()
quelle
Bitte nur NUMMERN, ALPHABETEN und SONDERZEICHEN akzeptieren
Nur Zahlen eingeben:
Nur Alphabete eingeben:
Geben Sie andere als Alphabete und Zahlen wie Sonderzeichen ein:
quelle