Dieses Mal zeige ich Ihnen, was die neuen Funktionen in regulären Ausdrücken sind und welche Vorsichtsmaßnahmen bei der Verwendung der neuen Funktionen in regulären Ausdrücken gelten. Das Folgende ist ein praktischer Fall. , lass uns einen Blick darauf werfen.
Neue Funktionen der regulären Ausdrücke von ES2015:
Basierend auf den ursprünglichen regulären Ausdrücken bietet ES2015 eine verbesserte Unterstützung für Vier-Byte-Unicode-Zeichen und andere Funktionen.
Weitere Informationen zu regulären Ausdrücken finden Sie im Abschnitt „Tutorial zu regulären Ausdrücken“.
1. Verwendung des RegExp-Konstruktors:
Verwenden Sie vor ES2015 den RegExp-Konstruktor, um ein reguläres Ausdrucksobjekt zu erstellen Es gibt zwei Möglichkeiten:
Erstellungsmethode eins:
var reg = new RegExp("antzone","g");
-Konstruktors ist der String-Körper des regulären Ausdrucks und der zweite Parameter ist der Modifizierer des regulären Ausdrucks.Der obige Code entspricht dem folgenden Code:
var regex = /antzone/g;
Erstellungsmethode zwei:
var reg = new RegExp(/antzone/g);
Wenn der Parameter keine reguläre Ausdruckszeichenfolge ist, kann es nur einen Parameter geben; falsch:var reg = new RegExp(/antzone/,g);
Das Festlegen des regulären Ausdrucksmodifikators mithilfe des zweiten Parameters ist nicht zulässig.ES2015 ändert dieses Verhalten, auch wenn der erste Parameter ein reguläres Ausdrucksobjekt ist, können Sie auch den zweiten Parameter angeben:
var reg = new RegExp(/antzone/gi," g" );
Der im zweiten Parameter angegebene reguläre Ausdrucksmodifikator überschreibt den Modifikator im ersten Parameter.2. Reguläre Methoden von Strings:
Die Methoden match(), replace(), search() und split(), die sich auf reguläre Ausdrücke beziehen, gehören zum Strings-Objekt .ES2015 hat dies geändert. Wenn diese vier Methoden aufgerufen werden, wird die Instanzmethode des
RegExp-Objekts tatsächlich intern aufgerufen. (1).String.prototype.match ruft RegExp.prototype[Symbol.match] auf.
(2).String.prototype.replace ruft RegExp.prototype[Symbol.replace] auf
(3).String.prototype.search ruft RegExp.prototype[Symbol.search] auf
(3).String .prototype.split ruft RegExp.prototype[Symbol.split] auf
Weitere Informationen zu Symbol finden Sie im ES2015-Symbolkapitel.
3. Line-behind-Assertionen (ES2016):
Informationen zu Line-behind-Assertionen finden Sie im Kapitel über reguläre Ausdrücke mit der Breite Null.4. Neue Modifikatoren:
修饰符 | 描述 |
u修饰符 | 此修饰符标识能够正确处理大于uFFFF的Unicode字符。 |
y修饰符 | 规定只能从lastIndex属性规定的位置开始进行匹配,匹配失败不会再去尝试后面的字符。 |
5. Neue Attribute:
属性 | 描述 |
sticky属性 | 返回一个布尔值,用来标识是否设置了y修饰符。 |
flags属性 | 返回正则表达式的修饰符。 |
6 . Neue Methode:
方法 | 描述 |
RegExp.escape()(ES2016) |
Detaillierte Erläuterung der Verwendung von W-Metazeichen für reguläre Ausdrücke (mit Code)
Zeichen für reguläre Ausdrücke Detaillierte Einführung in die Klassen
Das obige ist der detaillierte Inhalt vonWas sind die neuen Funktionen in regulären Ausdrücken?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!