Heim > Web-Frontend > js-Tutorial > Eine Erklärung für normale Faulheit und Gier

Eine Erklärung für normale Faulheit und Gier

零下一度
Freigeben: 2017-07-17 14:32:47
Original
1183 Leute haben es durchsucht

Dieser Artikel liefert eine Erklärung für normale Faulheit und Gier. Ich hoffe, dass er für alle hilfreich sein wird.

exec - > Reguläre Erfassung

Jedes Mal, wenn Sie erfassen, wird zuerst der Standardabgleich durchgeführt Ergebnis ist null; wir können nur passende Inhalte erfassen.

Erfasster Inhaltsformat

1 Das Array ist der vom aktuellen regulären Ausdruck erfasste Inhalt

Index: die Indexposition, an der der erfasste Inhalt in der Zeichenfolge beginnt

 Eingabe: Erfasste Originalzeichenfolge

  reg = /\d+/ str = 'woshi2016ni2017' res =
Nach dem Login kopieren
var res = reg.exec(str);
console.log(res) // ['2016',index:5,input:'woshi2016ni2017']
Nach dem Login kopieren

2. Merkmale der regulären Erfassung

 1) Faulheit -> Bei jeder Ausführung von exec wird nur der erste übereinstimmende Inhalt erfasst. Selbst wenn mehrere Erfassungen ausgeführt werden, wird der erste übereinstimmende Inhalt ohne Verarbeitung erfasst.

LastIndex: ist die Position, an der die Suche in der Zeichenfolge für jede reguläre Erfassung beginnt. Der Standardwert ist 0

2) Vorgehensweise Faulheit lösen Sexualität? Am Ende des regulären Ausdrucks einen Modifikator „g“ hinzufügen

Modifikatoren: g, i, m

global( g): Globaler Abgleich

ignoreCase(i): Groß-/Kleinschreibung ignorieren

multiline(m): Mehrzeiliger Abgleich 🎜>

var reg = /\d/g;
Nach dem Login kopieren
var str = 'woshi2016ni2017';
Nach dem Login kopieren
console.log(reg.lastIndex)
Nach dem Login kopieren
console.log(reg.exec(str))
Nach dem Login kopieren
 
Prinzip: Fügen Sie den globalen Modifikator g hinzu, um den Wert unseres lastIndex nach jeder Erfassung zu regulieren Neueste Werte, und die nächste Erfassung beginnt an der neuesten Position, sodass alle Inhalte, die erfasst werden müssen, abgerufen werden können

 3), schreiben Sie Ihr eigenes Programm, um die regulären Werte zu erhalten Ausdruck Alle erfassten Inhalte (vergessen Sie nicht, g hinzuzufügen)

 

var reg = /\d+/g;var str = 'aswofde2015xsewde2016awdefer2017';var ary = [];var res = reg.exec(str);while(res){
            ary.push(res[0])
            res = reg.exec(str);
        }
        console.log(ary)//[2015,2016,2017]
Nach dem Login kopieren
4), Gier Merkmal: Jede Erfassung des regulären Musters wird gemäß dem längsten Übereinstimmungsergebnis erfasst. Beispiel: 2 entspricht dem regulären Muster und 2015 entspricht auch dem regulären Muster. Unsere Standarderfassung ist 2015

5), wie lässt sich die gierige Natur des regulären Problems lösen -> danach ein Quantifizierer-Metazeichen hinzufügen? Das heißt

var reg = /\d+?/g;var str = 'aswofde2015xsewde2016awdefer2017';
        console.log(reg.exec(str));
Nach dem Login kopieren
 
? Es hat viele Funktionen in regulären Ausdrücken: Setzen Sie es nach einem

gewöhnlichen Metazeichen

zur Darstellung von 0-1 Vorkommen von /d?/ -> Die Zahl kann erscheinen oder auch nicht

Setzen Sie sie nach dem Metazeichen eines Quantor ist gierig, wenn die Erfassung abgebrochen wird

3. Die Übereinstimmungsmethode in der Zeichenfolge -> Kombiniere alle Summen mit regulären Alle übereinstimmenden Zeichen werden erhalten  

Obwohl Match in der aktuellen Situation einfacher ist als unser Exec, gibt es einige Probleme im Match, die es im Fall der gruppierten Erfassung nicht alleine bewältigen kann , match kann nur den Inhalt erfassen, der mit großen regulären Ausdrücken übereinstimmt, aber der Inhalt, der mit kleinen regulären Ausdrücken erfasst wird, kann nicht abgerufen werden

Das obige ist der detaillierte Inhalt vonEine Erklärung für normale Faulheit und Gier. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage