Heim  >  Artikel  >  Web-Frontend  >  Vertieftes Verständnis der Analyse von Metazeichen und Zeichenklassen in regulären JS-Ausdrücken

Vertieftes Verständnis der Analyse von Metazeichen und Zeichenklassen in regulären JS-Ausdrücken

不言
不言Original
2018-07-11 09:29:161410Durchsuche

Dieser Artikel stellt hauptsächlich die Analyse von Metazeichen und Zeichenklassen für ein tieferes Verständnis der regulären JS-Ausdrücke vor. Jetzt kann ich ihn mit Ihnen teilen

Meta Zeichen und Zeichenklassen

Metazeichen

Reguläre Ausdrücke bestehen aus zwei grundlegenden Zeichentypen:

1. Literale (normale) Textzeichen: Zeichen, die ihre eigene Bedeutung darstellen, wie z : a, b, c, 1, 2, 3 usw.

2. Metazeichen: Metazeichen sind Nicht-Buchstaben-Zeichen mit besonderer Bedeutung in regulären Ausdrücken. Beispielsweise stellt b eine Wortgrenze dar, die der Anfang oder das Ende eines Wortes sein kann.

Gemeinsame Symbol-Metazeichen:

* + ? $ ^ . | \ () {} []

Zeichenklasse

Im Allgemeinen entspricht ein Zeichen in einem regulären Ausdruck einem Zeichen in einer Zeichenfolge. Beispielsweise bedeutet der Ausdruck abt ab plus ein t (horizontales Tabulatorzeichen).

Allerdings möchten wir oft nicht zu einem bestimmten Charakter passen, sondern zu einem bestimmten Charaktertyp. An dieser Stelle können wir das Metazeichen [] verwenden, um eine einfache Klasse zu erstellen.

Die sogenannte Klasse bezieht sich auf ein Objekt, das bestimmten Merkmalen, einer allgemeinen Referenz, und nicht einem bestimmten Charakter entspricht. Der Ausdruck [abc] gruppiert die Zeichen a oder b oder c in einer Kategorie und kann mit solchen Zeichen übereinstimmen.

Beispiel:

let reg = /[abc]/g
let text = 'a1b2c3d4e5'
text.replace(reg, 'X')  // X1X2X3d4e5

Wenn der reguläre Ausdruck mit a oder b oder c übereinstimmt, wird er automatisch durch X

Negation der Zeichenklasse

Oftmals stoßen wir auf eine Situation, in der wir nicht bestimmte Zeichen, sondern andere zuordnen möchten. Zu diesem Zeitpunkt können Sie Zeichenklassen zum Negieren verwenden. Verwenden Sie das Metazeichen „^“, um eine umgekehrte Klasse zu erstellen, dh Inhalte, die nicht zu einer bestimmten Klasse gehören.

Der Ausdruck

stellt etwas dar, das nicht die Zeichen [^abc] oder a oder b sind. c

Beispiel:

let reg = /[^abc]/g
let text = 'a1b2c3d4e5'
text.replace(reg, 'X')  // aXbXcXXXXX

Die Ergebnisse zeigen, dass, wenn der Ausdruck mit

oder a oder b übereinstimmt, keine Verarbeitung durchgeführt wird und die restlichen Zeichen in c konvertiert werden X

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website.

Verwandte Empfehlungen:

<a title="深入理解JS正则表达式之REGEXP对象的解析" href="http://www.php.cn/js-tutorial-406370.html" target="_blank">深入理解JS正则表达式之REGEXP对象的解析</a>

<a title="JavaScript实现快速排序的算法思想" href="http://www.php.cn/js-tutorial-406371.html" target="_blank" style='font-family: "Microsoft Yahei", "Hiragino Sans GB", Helvetica, "Helvetica Neue", 微软雅黑, Tahoma, Arial, sans-serif;'>JavaScript实现快速排序的算法思想</a><br>

Das obige ist der detaillierte Inhalt vonVertieftes Verständnis der Analyse von Metazeichen und Zeichenklassen in regulären JS-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