Heim > Artikel > Web-Frontend > Detaillierte Analyse übereinstimmender Einzelzeichen mithilfe regulärer Ausdrücke
Dieses Mal werde ich Ihnen eine detaillierte Analyse der Verwendung regulärer Ausdrücke zum Abgleichen eines einzelnen Zeichens geben ein Blick. Das Beispiel in diesem Artikel beschreibt das Tutorial zum
regulären Ausdruckzum Abgleichen eines einzelnen Zeichens. Geben Sie es wie folgt als Referenz an alle weiter:
Hinweis: In allen Beispielen sind die Ergebnisse der regulären Ausdrucksübereinstimmung im Quelltext[ und ], einige Beispiele werden mit Java implementiert. Wenn es sich um die Verwendung regulärer Ausdrücke in Java selbst handelt, wird dies an der entsprechenden Stelle erläutert. Alle Java-Beispiele werden unter JDK1.6.0_13 getestet. Java-Testcode:
1. Übereinstimmung mit reinem Text/** * 根据正则表达式和要匹配的源文本,输出匹配结果 * @param regex 正则表达式 * @param sourceText 要匹配的源文本 */ public static void matchAndPrint(String regex, String sourceText){ Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(sourceText); while(matcher.find()){ System.out.println(matcher.group()); } }
1 Ergebnis
Schauen wir uns zunächst einen einfachen regulären Ausdruck an. Obwohl es sich heute um einfachen Text handelt, handelt es sich heute um einen regulären Ausdruck. Schauen wir uns ein Beispiel an:
Quellentext:Gestern ist Geschichte, morgen ist ein Geheimnis, aber heute ist ein Geschenk.
Regulärer Ausdruck: heute
Ergebnis: Gestern ist Geschichte, morgen ist ein Rätsel, aber [heute]
ist ein Geschenk.Analyse: Der hier verwendete reguläre Ausdruck ist Klartext. was heute im Quelltext übereinstimmt.
ruft die matchAndPrint-Methode auf und das Ausgabeergebnis ist: heute 2. Es gibt mehrere übereinstimmende ErgebnisseQuellentext: Gestern ist Geschichte, morgen ist ein Geheimnis, aber heute ist ein Geschenk.
Regulärer Ausdruck: ist
Ergebnis: Gestern ist Geschichte, morgen ist ein Rätsel, aber 【heute】
ist ein Geschenk.Analyse: Im Quelltext gibt es drei ist, aber vier sind ausgegeben, weil die Geschichte in ist, wird auch abgeglichen.
ruft die matchAndPrint-Methode auf und das Ausgabeergebnis ist:is
is
ist
ist
3. Groß-/Kleinschreibungproblem
Das Normale Ausdruck ist Bei Buchstaben wird die Groß-/Kleinschreibung beachtet, aber viele Implementierungen regulärer Ausdrücke unterstützen auch Vergleichsoperationen, bei denen die Groß-/Kleinschreibung nicht berücksichtigt wird. Verwenden Sie in JavaScript
das i-Flag, um eine Übereinstimmung ohne Berücksichtigung der Groß- und Kleinschreibung durchzuführen.Wenn Sie in Java die Groß-/Kleinschreibung nicht berücksichtigen möchten, können Sie beim Kompilieren des regulären Ausdrucks Folgendes angeben:
2. Entspricht einem beliebigen ZeichenPatternpattern = Pattern.compile(regex, Pattern.CASE_INSENSITIVE);
Die regulären Ausdrücke, die wir zuvor gesehen haben, sind alle statischer Klartext und spiegeln überhaupt nicht die Leistungsfähigkeit regulärer Ausdrücke wider. Als nächstes sehen wir uns an, wie man reguläre Ausdrücke verwendet, um unvorhersehbare Zeichen abzugleichen.
In regulären Ausdrücken wird dasSonderzeichen
(oder eine Sammlung von Zeichen) verwendet, um anzugeben, wonach gesucht werden soll. Das Zeichen . (englischer Statuspunkt) kann mit jedem einzelnen Zeichen übereinstimmen. Entspricht dem ?-Zeichen in DOS und dem _-Zeichen (Unterstrich) in SQL. Beispiel: Der reguläre Ausdruck c.t passt zu cat, cut, cot usw. Schauen wir uns ein Beispiel an.orders1.txt
orders2.txt
sales1.txt
salesA.txt
orders3.txt
sales2.txt
sales.txt
Regulärer Ausdruck: sales
.Ergebnis:
orders1.txtorders2.txt
【sales1】.txt
【salesA】.txt
orders3.txt
【 sales2】.txt
【sales.】txt
Analyse: Der reguläre Ausdruck sales kombiniert die Zeichenfolge sales und Finden Sie den Dateinamen Aus den Ergebnissen können wir ersehen, dass Buchstaben, Zahlen und sich selbst übereinstimmen können. 4 von 7 Dateien stimmen mit diesem Muster überein.
Wenn die matchAndPrint-Methode aufgerufen wird, lautet das Ausgabeergebnis:sales1
salesA
Verkäufe2
Verkäufe.
3. Passen Sie Sonderzeichen an
Zeichen haben besondere Eigenschaften Bedeutung regulärer Ausdrücke. Wenn Sie ein . im Muster benötigen, müssen Sie einen Weg finden, dem regulären Ausdruck mitzuteilen, dass Sie das Zeichen selbst und nicht seine spezielle Bedeutung im regulären Ausdruck benötigen. Dazu müssen Sie das Zeichen maskieren, indem Sie es voranstellen. Es ist auch ein Metazeichen (ein Metazeichen, das darauf hinweist, dass dieses Zeichen eine besondere Bedeutung hat und nicht die Bedeutung des Zeichens selbst). Betrachten Sie das folgende Beispiel. Suchen Sie nach Dateien, die mit „na“ oder „sa“ beginnen, unabhängig davon, welche Zahl darauf folgt. Text:sales.txt
na1.txt
na2.txt
sa1.txt
sanatxt.txt
Regulärer Ausdruck: .a.. txt
Ergebnis:[sal]es.txt
[na1].txt
[na2].txt
[sa1].txt
[sanatxt].txt
Analyse: Dieser reguläre Ausdruck hat na1.txt, na2.txt und sa1.txt gefunden, aber auch zwei unerwartete Ergebnisse gefunden. Weil das .-Zeichen im regulären Ausdruck .a..txt mit jedem Zeichen übereinstimmt. Um das .-Zeichen selbst abzugleichen, müssen Sie Escapezeichen verwenden. Das Ändern des regulären Ausdrucks in .a..txt kann unseren Anforderungen gerecht werden.Hinweis: Wenn Sie Java verwenden, sollte der reguläre Ausdruck .a..txt als .a.\.txt geschrieben werden, da es sich in der Java-Sprache auch um ein Escape-Zeichen handelt.
4. Zusammenfassung
Reguläre Ausdrücke werden oft als Muster bezeichnet. Sie sind eigentlich Zeichenfolgen, die aus einigen Zeichen bestehen. Diese Zeichen können gewöhnliche Zeichen (Klartext) oder Metazeichen (Sonderzeichen mit besonderer Bedeutung) sein. Hier finden Sie eine Einführung in die Verwendung gewöhnlicher Zeichen und Metazeichen zur Zuordnung von Einheitenzeichen. .kann mit jedem Zeichen übereinstimmen. Wird verwendet, um Zeichen zu maskieren. In regulären Ausdrücken beginnen Zeichenfolgen mit besonderer Bedeutung immer mit einem Zeichen. Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website! Empfohlene Lektüre:Verwendung von PHP und JS zur Implementierung des regelmäßigen Passwortabgleichs von Zahlen und Buchstaben
Regulär in JQ Verify dass die Methode kein Chinesisch enthalten darf
Das obige ist der detaillierte Inhalt vonDetaillierte Analyse übereinstimmender Einzelzeichen mithilfe regulärer Ausdrücke. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!