Heim  >  Artikel  >  Backend-Entwicklung  >  Boolean Education – Video-Tutorial zu regulären Ausdrücken

Boolean Education – Video-Tutorial zu regulären Ausdrücken

黄舟
黄舟Original
2017-08-30 09:36:021573Durchsuche

Durch die Verwendung regulärer Ausdrücke zur Darstellung von Textsuchparametern können Sie einige sich dynamisch ändernde Zeichenfolgenübereinstimmungen, z. B. die Änderung der Zeit, geschickt durchführen. Aus diesem Grund haben wir das „Boolean Education Regular Expression Video Tutorial“ zusammengestellt, in der Hoffnung, jedem dabei zu helfen, reguläre Ausdrücke besser zu verstehen.


Boolean Education – Video-Tutorial zu regulären Ausdrücken


Kurswiedergabeadresse: http://www.php .cn/course/281.html


Der Unterrichtsstil des Lehrers:

Lehrer Die Vorlesungen sind einfach und tiefgründig, klar strukturiert, Schicht für Schicht analysiert, ineinandergreifend, rigoros in der Argumentation und rigoros in der Struktur. Wir nutzen die logische Kraft des Denkens, um die Aufmerksamkeit der Schüler zu erregen, und nutzen die Vernunft, um den Unterrichtsprozess im Klassenzimmer zu steuern . Durch das Anhören der Vorlesungen der Lehrer lernen die Schüler nicht nur Wissen, sondern erhalten auch eine Denkschulung und werden auch von der strengen akademischen Haltung der Lehrer beeinflusst und beeinflusst.


Der schwierigere Punkt in diesem Video ist gierig und nicht gierig:

1. Was sind gierig und nicht gierig in regulären Ausdrücken? Greedy-Matching

Zum Beispiel:

String str="abcaxc";
    Patter p="ab*c";

Greedy-Matching: Reguläre Ausdrücke neigen im Allgemeinen dazu, mit der maximalen Länge übereinzustimmen, was das sogenannte Greedy-Matching ist. Wenn beispielsweise das Muster p zum Abgleichen der Zeichenfolge str verwendet wird, lautet das Ergebnis: abcaxc(ab*c).

Non-Greedy-Matching: Vergleichen Sie das Ergebnis einfach mit so wenigen übereinstimmenden Zeichen wie möglich. Wenn beispielsweise das Muster p zum Abgleichen der Zeichenfolge str verwendet wird, lautet das Ergebnis: abc(ab*c).

2. Wie unterscheidet man die beiden Modi bei der Programmierung?

Der Standardwert ist der Greedy-Modus. Fügen Sie direkt nach dem Quantor ein Fragezeichen ein. Es ist ein nicht gieriger Modus.

Quantoren: {m,n}: m bis n

*: eine beliebige Anzahl von

+: eins bis mehrere

? : 0 oder eins

3. Programmbeispiel

verwendet die Regeln von Snort, um einen Teil einer Regel als passenden Text zu verwenden, um ihn an den Inhaltsteil anzupassen.

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RegularTest {
    
    public static void main(String[] arg){
        String text="(content:\"rcpt to root\";pcre:\"word\";)";
        String rule1="content:\".+\"";    //贪婪模式
        String rule2="content:\".+?\"";    //非贪婪模式
        
        System.out.println("文本:"+text);
        System.out.println("贪婪模式:"+rule1);
        Pattern p1 =Pattern.compile(rule1);
        Matcher m1 = p1.matcher(text);
        while(m1.find()){
            System.out.println("匹配结果:"+m1.group(0));
        }
        
        System.out.println("非贪婪模式:"+rule2);
        Pattern p2 =Pattern.compile(rule2);
        Matcher m2 = p2.matcher(text);
        while(m2.find()){
            System.out.println("匹配结果:"+m2.group(0));
        }
    }
}



Hier empfehlen wir auch den Download von Quellcode-Ressourcen: http://www.php.cn /xiazai /code/2132


Das obige ist der detaillierte Inhalt vonBoolean Education – Video-Tutorial zu regulären Ausdrücken. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn