Heim > Artikel > Web-Frontend > Finden Sie Zahlen mit JavaScript RegExp
In diesem Tutorial lernen wir, wie man mit JavaScript RegExp Zahlen (0-9) findet. ASCII-Werte für Zahlen [0-9] beginnen bei 48 bis 57. Wenn Sie einen beliebigen ASCII-Wert einer Zahl drucken möchten, müssen Sie 48 zur Zahl hinzufügen.
Wir stellen Zahlen in regulären Ausdrücken als d dar. RegExp ist ein Objekt, das ein Muster zum Durchführen von Such- und Ersetzungsvorgängen oder zur Eingabevalidierung für Zeichenfolgen angibt.
Das Folgende ist die Syntax des regulären Ausdrucksmusters für Zahlen oder Zeichen -
new RegExp("\d") or simply /\d/
/d/ wurde in ES1 eingeführt. Es wird von allen Browsern vollständig unterstützt. Wie Chrome, IE, Safari, Opera, Firefox und Edge.
RegExp hat Modifikatoren wie g, i, m. „g“ wird verwendet, um eine globale Übereinstimmung durchzuführen, „i“ wird verwendet, um eine Übereinstimmung ohne Berücksichtigung der Groß-/Kleinschreibung durchzuführen, und „m“ wird verwendet, um eine mehrzeilige Übereinstimmung durchzuführen.
Die Syntax für d mit einem Modifikator wie
new RegExp("\d", "g") or simply /\d/g
Sehen wir uns zum besseren Verständnis einige Programmbeispiele an.
Im folgenden Programm verwenden wir den String-Matching (Muster), um Zahlen (d) in einer bestimmten Zeichenfolge zu finden. Wir verwenden den RegExp-Modus als /d/g. Die Methode string match() gibt ein Array von Zahlen in einem String zurück.
<!DOCTYPE html> <html> <body> <h2>RegExp digit finding</h2> <p id="text"> </p> <p>Digit(s): <span id = "result"></span> </p> <script> let text = "200 students are passed out 250 in the class."; document.getElementById("text").innerHTML = text; let pattern = /\d/g; let result = text.match(pattern); document.getElementById("result").innerHTML = result; </script> </body> </html>
Hier gibt die Methode match() ein Array von Zahlen zurück, wenn der angegebene Text Zahlen enthält, andernfalls gibt sie null zurück. Schauen wir uns ein anderes Beispiel an.
Im folgenden Programm nehmen wir eine Zeichenfolge ohne Zahlen und versuchen, Zahlen in der Zeichenfolge zu finden. Wir verwenden String-Matching (Muster), um Zahlen (d) in einer bestimmten Zeichenfolge zu finden. Wir verwenden den RegExp-Modus als /d/g. Mal sehen, wie unsere Ausgabe aussieht.
<!DOCTYPE html> <html> <body> <h2>Finding digits using RegExp</h2> <p id = "result"></p> <script> let text = "All students are qualified for the test"; let pattern = /\d/g; let result = text.match(pattern); if(result == null){ document.getElementById("result").innerHTML = "No digits found in the text."; } else { document.getElementById("result").innerHTML = result; } </script> </body> </html>
Im Programm unten suchen wir nach Zahlen zwischen 2 und 7. Dazu verwenden wir /[2-7]/g als reguläres Ausdrucksmuster.
<!DOCTYPE html> <html> <body> <h2>RegExp digit finding</h2> <p id = "text"></p> <p>Digit(s): <span id = "result"></span> </p> <script> let myStr = "200 students are passed out 250 in the class."; document.getElementById("text").innerHTML = myStr; let pattern = /[2-7]/g; let result = myStr.match(pattern); document.getElementById("result").innerHTML = result; </script> </body> </html>
Wir können einige Methoden verwenden, um numerische Zeichen zu ersetzen. Sehen wir uns das Beispiel unten an
Nummern suchen und ersetzen
Im folgenden Beispiel suchen wir Zahlen und ersetzen sie durch Leerzeichen. Hierzu verwenden wir die Methoden split() und join().
<!DOCTYPE html> <html> <body> <h2>Replace digit character(s)</h2> <p id = "text"></p> <p>After replacing the digit character(s): <span id = "result"></span> </p> <script> let myStr = "200 students are passed out 250 in the class."; document.getElementById("text").innerHTML = myStr; let pattern = /\d/g; let result = myStr.split(/\d/g).join(" ") document.getElementById("result").innerHTML = result; </script> </body> </html>
Wir werden auch nach einer einfacheren Möglichkeit suchen, numerische Zeichen zu ersetzen. Wie,
<!DOCTYPE html> <html> <body> <h2>Replace digit character</h2> <p id = "text"></p> <p>After replacing the digit character(s): <span id = "result"></span> </p> <script> let myStr = "200 students are passed out 250 in the class."; document.getElementById("text").innerHTML = myStr; let pattern = /\d/g; let result = myStr.replace(/\d/g , " ") document.getElementById("result").innerHTML = result; </script> </body> </html>
Wie wir besprochen haben, steht g für Global Match. Es stoppt nicht beim ersten Vorkommen, sondern sucht nach allen Vorkommen.
Hier können wir beobachten, dass der Text keine Zahlen enthält. Daher gibt match() null zurück. Hoffentlich hat dieses Tutorial klargestellt, wie man Zahlen in einem bestimmten Text findet.
Das obige ist der detaillierte Inhalt vonFinden Sie Zahlen mit JavaScript RegExp. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!