Heim Backend-Entwicklung PHP-Tutorial Zusammenfassung häufig verwendeter regulärer PHP-Ausdrücke und grammatikalischer Anmerkungen

Zusammenfassung häufig verwendeter regulärer PHP-Ausdrücke und grammatikalischer Anmerkungen

May 29, 2020 pm 01:07 PM
php 正则表达式

Grundlegende Syntax

Trennzeichen:

identifiziert den Anfang und das Ende eines regulären Ausdrucks. Verwenden Sie „/“ oder „ #' oder '{ }', da die Syntax '{ }' auch ein regulärer Ausdrucksoperator sein kann, wird die Verwendung zur Vermeidung von Verwirrung nicht empfohlen. Die empfohlene Verwendung ist wie folgt:

Copy$pattern = '/[0-9]/';  //我喜欢这个,看起来比较简洁 $pattern = '#[0-9]#';
Nach dem Login kopieren

Atome:

Sichtbare Atome: Zeichen in der Unicode-Codierungstabelle, die mit bloßem Auge sichtbar sind nach der Tastaturausgabe, zum Beispiel: Satzzeichen; : Newline n, Tab t, Leerzeichen usw. ,
Im Allgemeinen werden nur diese drei verwendet (Newline-Zeichen werden normalerweise zusammen mit anderen Zeichen abgeglichen, da nur Newline-Zeichen nicht abgeglichen werden können)
Tipps: Sie müssen ' hinzufügen ' vor dem passenden Operator. Zum Beispiel: '+'-Zeichen, bei Übereinstimmung müssen Sie '+'

Metazeichen schreiben

Atomische Filtermethode:

|. Übereinstimmung mit zwei oder mehreren Zweigauswahlen

[] entspricht jedem Atom in eckigen Klammern
[^] entspricht jedem Zeichen außer den Atomen in eckigen Klammern; duang oder [Dd]uang Beide können mit Duang und duang übereinstimmen
Intervallschrift: [a-z] entspricht den Zeichen von a bis z, [0-9] entspricht den Zeichen von 0 bis 9. Es kann auch [a-z0-9]
sein. Entspricht jedem Zeichen außer dem Zeilenumbruch.
d entspricht jeder Dezimalziffer, d. h. {0-9]
D entspricht jeder Nicht-Dezimalziffer [^ 0-9] entspricht [^d]
s, das einem unsichtbaren Atom entspricht, also [fnrtv]
S entspricht einem sichtbaren Atom, also [fnrtv], äquivalent zu [s]z
w Entspricht jeder Zahl, jedem Buchstaben oder Unterstrich, d [w]


Quantifier

{n} bedeutet, dass das Atom davor genau n-mal vorkommt.

[n] bedeutet, dass das vorhergehende Atom mindestens n-mal vorkommt
{n,m} erscheint mindestens n-mal und höchstens m-mal

* entspricht 0-mal, einmal oder mehrmals, d. h. {0,}
+ stimmt mit einem oder mehreren Mal überein, also mit {1,}
? Stimmt mit 0 oder 1 Mal überein, also mit {0,1}


Grenzkontrolle

^ entspricht der Startposition der Zeichenfolge

$ entspricht der Endposition der Zeichenfolge
Beispiel: ^John kann mit: John übereinstimmen, aber nicht mit: 123John , da die Zeichenfolge so angegeben ist, dass sie mit John beginnt. Beginnend mit



Mustereinheit

() entspricht dem gesamten Teil als Atom, wie zum Beispiel: (X |x)iaomi, das mit Xiaomi übereinstimmen kann

Korrekturmodus

Gieriger Abgleich

Wenn das Übereinstimmungsergebnis nicht eindeutig ist, Nimm das längere (Standard)

Lazy Matching

Wenn das Matching-Ergebnis nicht eindeutig ist, wähle das kürzere, füge einfach „U“ nach „/“ hinzu regulärer Ausdruck, zum Beispiel '/[0-9]/U'; Beispiel:

Copy$subject = "test__123123123";
preg_match('/test.+123/', $subject, $matches); //贪婪模式  var_dump($matches);
preg_match('/test.+123/U', $subject, $matches); //懒惰模式var_dump($matches);
Nach dem Login kopieren

Gemeinsame Korrekturmuster:

U Lazy Matching

i Ignoriere das Fall von englischen Buchstaben
x Ignorieren Sie Leerzeichen in regulären Ausdrücken

s Lassen Sie das Metazeichen „.“ mit allen Zeichen übereinstimmen, einschließlich Zeilenumbrüchen


Allgemeine Funktionen

preg_match

werden ausgeführt. Passen Sie den regulären Ausdruck an.

preg_match ( string $pattern , string $subject [, array &$matches [, int $flags = 0 [, int $offset = 0 ]]] ) : int
Nach dem Login kopieren

Muster: Zu suchendes Muster, Zeichenfolgentyp. Betreff: Eingabezeichenfolge. match: Wenn der Parameter „matches“ angegeben wird, wird er mit Suchergebnissen gefüllt und die Datenstruktur ist ein eindimensionales Array. Flags: können auf PREG_OFFSET_CAPTURE gesetzt werden, wobei das 0. Element des Suchergebnisses als übereinstimmende Zeichenfolge und das 1. Element als entsprechender Offset (Position) verwendet wird. Offset: Die Suche beginnt an der Startposition der Zielzeichenfolge.

Rückgabewert: Anzahl der Übereinstimmungen

Ähnlich wie bei der Funktion preg_match_all stimmen die Parameter mit preg_match überein

Unterschied:


preg_match: stimmt nur einmal überein, das Datenergebnis der Suche Strukturübereinstimmung ist ein eindimensionales Array preg_match_all: Übereinstimmung mit allen, die Datenstruktur der Suchergebnisübereinstimmung ist ein zweidimensionales Array.

preg_replace

Führt eine Suche und Ersetzung regulärer Ausdrücke durch und der Rückgabewert ist die ersetzte Zeichenfolge.

preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] ) : mixed
Nach dem Login kopieren

pattern: das zu durchsuchende Muster. Kann eine Zeichenfolge oder ein Array von Zeichenfolgen sein. Ersetzung: eine Zeichenfolge oder ein Array von Zeichenfolgen, die zum Ersetzen verwendet wird. Betreff: eine Zeichenfolge oder ein Array von Zeichenfolgen, die durchsucht und ersetzt werden soll. limit: die maximale Anzahl von Ersetzungen. Der Standardwert ist -1 (unbegrenzt). count: Anzahl der Ersetzungen.

Ähnlich wie bei der Funktion preg_filter sind die Parameter dieselben wie bei preg_replace

Unterschiede (der Unterschied ist nur sichtbar, wenn Arrays zum Abgleichen verwendet werden): preg_replace: gibt alle Ergebnisse zurück, unabhängig davon, ob es eine Ersetzung gibt oder nicht, nur preg_filter: gibt passende Ergebnisse zurück.


preg_split

Zeichenfolgen durch einen regulären Ausdruck trennen

preg_split ( string $pattern , string $subject [, int $limit = -1 [, int $flags = 0 ]] ) : array
Nach dem Login kopieren

$pattrn:用于搜索的模式,字符串形式。subject:输入字符串limit:将限制分隔得到的子串最多只有limit个,返回的最后一个 子串将包含所有剩余部分。flags:有以下标记的组合:
-- 1. PREG_SPLIT_NO_EMPTY: 返回分隔后的非空部分。
-- 2. PREG_SPLIT_DELIM_CAPTURE: 用分隔符'()'括号把匹配的捕获并返回。
-- 3. PREG_SPLIT_OFFSET_CAPTURE: 匹配返回时将会附加字符串偏移量

PREG_SPLIT_DELIM_CAPTURE这个参数可能比较难明白,举个例子看看:

Copy$subject = "1a23b";  
$a = preg_split('/[\d]/', $subject, -1, PREG_SPLIT_NO_EMPTY);  
var_dump($a);  
$a = preg_split('/([\d])/', $subject, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE); 
var_dump($a);
Nach dem Login kopieren

输出如下:

array (size=2)
0 => string 'a' (length=1)
1 => string 'b' (length=1)
array (size=5)
0 => string '1' (length=1)
1 => string 'a' (length=1)
2 => string '2' (length=1)
3 => string '3' (length=1)
4 => string 'b' (length=1)

preg_grep

返回匹配模式的数组条目

preg_grep ( string $pattern , array $input [, int $flags = 0 ] ) : array
Nach dem Login kopieren

$pattern:要搜索的模式,字符串形式$input:输入数组flags:如果不设置则返回匹配的数目,设置PREG_GREP_INVERT则返回不匹配的数目。

preg_quote

转义正则表达式字符,返回为转义后的字符串

preg_quote ( string $str [, string $delimiter = NULL ] ) : string

str:输入字符串delimiter:需要转义的字符串

Das obige ist der detaillierte Inhalt vonZusammenfassung häufig verwendeter regulärer PHP-Ausdrücke und grammatikalischer Anmerkungen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Erklären Sie JSON Web Tokens (JWT) und ihren Anwendungsfall in PHP -APIs. Erklären Sie JSON Web Tokens (JWT) und ihren Anwendungsfall in PHP -APIs. Apr 05, 2025 am 12:04 AM

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

Erklären Sie das Konzept der späten statischen Bindung in PHP. Erklären Sie das Konzept der späten statischen Bindung in PHP. Mar 21, 2025 pm 01:33 PM

In Artikel wird die in PHP 5.3 eingeführte LSB -Bindung (LSB) erörtert, die die Laufzeitauflösung der statischen Methode ermöglicht, um eine flexiblere Vererbung zu erfordern. Die praktischen Anwendungen und potenziellen Perfo von LSB

Rahmensicherheitsmerkmale: Schutz vor Schwachstellen. Rahmensicherheitsmerkmale: Schutz vor Schwachstellen. Mar 28, 2025 pm 05:11 PM

In Artikel werden wichtige Sicherheitsfunktionen in Frameworks erörtert, um vor Schwachstellen zu schützen, einschließlich Eingabevalidierung, Authentifizierung und regelmäßigen Aktualisierungen.

Wie sende ich eine Postanforderung mit JSON -Daten mithilfe der Curl -Bibliothek von PHP? Wie sende ich eine Postanforderung mit JSON -Daten mithilfe der Curl -Bibliothek von PHP? Apr 01, 2025 pm 03:12 PM

Senden von JSON -Daten mithilfe der Curl -Bibliothek von PHP in der PHP -Entwicklung müssen häufig mit externen APIs interagieren. Eine der gängigen Möglichkeiten besteht darin, die Curl Library zu verwenden, um Post � ...

Anpassung/Erweiterung von Frameworks: So fügen Sie benutzerdefinierte Funktionen hinzu. Anpassung/Erweiterung von Frameworks: So fügen Sie benutzerdefinierte Funktionen hinzu. Mar 28, 2025 pm 05:12 PM

In dem Artikel werden Frameworks hinzugefügt, das sich auf das Verständnis der Architektur, das Identifizieren von Erweiterungspunkten und Best Practices für die Integration und Debuggierung hinzufügen.

Beschreiben Sie die soliden Prinzipien und wie sie sich für die PHP -Entwicklung anwenden. Beschreiben Sie die soliden Prinzipien und wie sie sich für die PHP -Entwicklung anwenden. Apr 03, 2025 am 12:04 AM

Die Anwendung des soliden Prinzips in der PHP -Entwicklung umfasst: 1. Prinzip der Einzelverantwortung (SRP): Jede Klasse ist nur für eine Funktion verantwortlich. 2. Open and Close Principle (OCP): Änderungen werden eher durch Erweiterung als durch Modifikation erreicht. 3.. Lischs Substitutionsprinzip (LSP): Unterklassen können Basisklassen ersetzen, ohne die Programmgenauigkeit zu beeinträchtigen. 4. Schnittstellen-Isolationsprinzip (ISP): Verwenden Sie feinkörnige Schnittstellen, um Abhängigkeiten und nicht verwendete Methoden zu vermeiden. 5. Abhängigkeitsinversionsprinzip (DIP): Hoch- und niedrige Module beruhen auf der Abstraktion und werden durch Abhängigkeitsinjektion implementiert.

Wie funktioniert die Session -Entführung und wie können Sie es in PHP mildern? Wie funktioniert die Session -Entführung und wie können Sie es in PHP mildern? Apr 06, 2025 am 12:02 AM

Die Hijacking der Sitzung kann in den folgenden Schritten erreicht werden: 1. Erhalten Sie die Sitzungs -ID, 2. Verwenden Sie die Sitzungs -ID, 3. Halten Sie die Sitzung aktiv. Zu den Methoden zur Verhinderung der Sitzung der Sitzung in PHP gehören: 1. Verwenden Sie die Funktion Session_regenerate_id (), um die Sitzungs -ID zu regenerieren. 2. Store -Sitzungsdaten über die Datenbank, 3. Stellen Sie sicher, dass alle Sitzungsdaten über HTTPS übertragen werden.

See all articles