292 Shares 8207 views

Regulärer Ausdruck (PHP). PHP: reguläre Ausdrücke Beispiele

Wie groß und vielfältige Welt der Informationen, genauso schnell, es erweitert und entwickelt. Jede Entscheidung – nur ein Punkt im Gesamtprozess der Bewegung. Wissen und Erfahrung ermöglichen es, den Prozess der Verwirklichung des Ziels zu verstehen, aber nie – nicht das Ergebnis seiner Leistungen. Es ist zu bezweifeln, dass wir in absehbarer Zeit auf dem Ergebnis sprechen können, aber es ist wichtig, dass der Prozess für sie das Streben ein bedeutender und objektiv notwendige Prozess ist.

„Desire und / oder eine Menge Geld“ nicht schaffen einen Algorithmus, dass der Lage ist, und natürlich „frei“ Mann tut, vor allem, wenn er nicht über denkt, was er tat. In jeder Situation hat das Informationsproblem zumindest einen blinden Fleck, aber für ihn, in der Regel sofort, andere saubere Flecken sichtbar sind, und nicht unbedingt, dass sie alle weißen Blüten.

Internet-Technologie hat den Zugang zu Informationen vereinfacht, aber die Frage ist – wie die gewünschte setzen auf, die – nicht vereinfacht und erwarb neue „Volumen“ der Arbeit. Und obwohl PHP regulären Ausdruck Lücke ist eindeutig nicht erschöpft, sie sind ein wichtiger Schritt nach vorn.

Einfache Funktionen + Algorithmus = Muster

Mit regulären Ausdrücken, reduziert PHP-Algorithmus deutlich den Inhalt, aber die üblichen Suchfunktionen / Ersatz und Verarbeitungsalgorithmen fanden ihre Bedeutung nicht verloren. Neue Ideen deuten die Informationen nicht Revolution. Die meisten, die erwartet werden kann – kompakter Code und erhöhen die Entwickler die Möglichkeit, richtig eine Suchabfrage zu formulieren.

Sie sollten auf PHP reguläre Ausdrücke kennen und anwenden. Beispiele überzeugend und effektiv. Aber es sollte den Bericht geben, dass mit dem Aufkommen einer neuen Suchmaschine, der Schwerpunkt auf das Muster verschoben – eine Art Mechanismus, obwohl in der Tat durch eine Reihe von einfachen Suchfunktionen ersetzt, Bedingungen, Schleifen und anderen Betreibern.

haben:

  • Qualität und modernes Werkzeug – es ist gut;
  • sehen und nutzen die Erfahrung der Kollegen ist die Sache;
  • die Kombination von Realität und virtuelle Idee – eine Erfolgsgarantie.

Das Erreichen Wissen, wie es notwendig war, um das Problem zu verstehen, um es zu lösen, ist es oft wichtiger als das spezifische Ergebnis.

Reguläre Ausdrücke in PHP werden durch eine Reihe von Funktionen in der Sprachsyntax und vielen nützlichen Beispiele im Internet vertreten. Aufgrund der Syntax spezifische Anwendungsmöglichkeiten sind nur durch die Phantasie des Entwicklers beschränkt, sondern sleuet bedenken, dass nicht alle Vorlagen arbeiten. PHP Validierung von regulären Ausdrücken ist von wesentlicher Bedeutung.

Einfache Suchzeichen (string)

Symbol – das ist nicht immer ein einziges Byte, und ist oft ein Symbol, als Chip, hat eine genaue Bedeutung zusätzlich. Encoding legt die sichtbaren Zeichen im Code anders. Das Symbol kann mehrere Möglichkeiten: „$“ = „USD“ = „USD“, … – das ist die genaue Bedeutung dieser irgendwo etwas, aber nicht unbedingt schließen, aufgrund der Währung. Jedoch kann die genaue Bedeutung in der Variablen PHP liegt, die immer mit dem Zeichen „$“ beginnt, kann aber nicht mit „USD“ und „USD“ beginnen.

erkennen und erfüllen – es ist aus der dynamischen objektorientierten Programmierung, wenn die Struktur, Funktionen, sind PHP regulären Ausdrücke direkt für die Entscheidungen verwendet: Das Symbol des Programms kann im Zusammenhang mit einer Funktion (String) sein. Gefunden das Symbol „turns“, das heißt, für sich allein, was an dem Ort zu tun, bestimmt, in dem es gefunden wird, und so, wie es ist „er hält“ notwendig.

Suchen Sie nach einem Zeichen / Zeile – nicht eine so einfache Übung, und je mehr Informationen, desto klarer, desto besser. Es ist nicht immer notwendig, die zehn besten in den Lebensmittelpreise zu finden, wählen Sie leckere Rezepte Geburtstagskuchen oder den Auftragnehmer für die Zwischendecke zu bestimmen.

Oft ist es notwendig, die einfachen Algorithmen sind nicht einfache arithmetische Informationen oder unter schwierigen Bedingungen zu optimieren, wenn das gewünschte Zeichen aus einer Datenbank zu wählen, und die Zeile, in denen es notwendig ist zu finden – hundert Seiten. Der Preis ist gleich ein Zeichen aus der Zeit, die Beispieldatenbank auszuwählen und den Preis, wo sie suchen – berüchtigt Suchzeit hunderte Websites.

Lone Symbol – es ist kein Begriff, und nicht ein paar Sätze, kann er überall und so klein wie gewünscht sein. Wie um zu bestimmen, was das gewünschte gefunden?

Beispiel: Suche nach Preisen

Finden Sie einfach den Text „$“ Symbol – ein wenig. Überprüfen Sie, ob es eine Zahl steht, ist es nicht immer genug. Wenn Sie einen Punkt oder eine Nummer vor dem Symbol „$“ bieten eine Garantie, dass die Preise, zu denen die Währungssymbole voraus sind, werden nicht berücksichtigt werden. Es gibt auch den Preis verzichtet, die im allgemeinen Währung nicht angegeben, aber auf der Seite ist es auf ausdrückliche Anweisungen.

Im Allgemeinen aufblasen die Lösung des Problems in der üblichen Weise bis zur Unkenntlichkeit Algorithmus und zeitraubend. Inzwischen einen regulären Ausdruck verwenden, wird die Anzahl von PHP keine Probleme finden.

$ CContents = preg_match_all ( "/ [0-9] + ([ $] | USD | y £ | ue) {1} / i.";

"Schau mal E-Mail – 2usd;
";
"Finden E-Mail – 2u.e;
.";
"Work E-Mail – ue2;
";
"Prüfen Sie E-Mail – 13 $", $ aResult);
. ‚; ‘. implodieren ( '', $ aResult [0]). '
'.

Antworten: "2; 2usd, 2u.e.", aber nichts in der Zeile finden: "E-Mails abrufen – $ 13."

Die Bereitstellung für das Vorhandensein des Musters vor oder hinter dem Charakter, können Sie Erfolg schnell in den meisten Fällen erreichen.

$ CContents = preg_match_all ( „/ ([0-9] + ([ $] | USD | y £ |. Ue) {1}) | (([$] | USD | y £ . | ue) {1} [0-9] +) / i „;
"Schau mal E-Mail – 2usd;
";
"Finden E-Mail – 2u.e;
.";
"Work E-Mail – ue2;
";
"Prüfen Sie E-Mail – 13 $", $ aResult);
. ‚; ‘. implodieren ( '', $ aResult [0]). '
'.

Ergebnis: "4; 2usd, 2u.e., ue2, $ 13."

Über unbeabsichtigte Logik

Reguläre Ausdrücke PHP Angebote sowie andere Werkzeuge, aber es ist nicht notwendig, sie auf seine Regeln nach Anwendung oder andere Funktionen Klein Syntax Art und Weise zur Verfügung gestellt verwenden.

Mögliche vor Beginn der Suche auf dem Array drehen erforderlich, und der Ort, an dem wir, aufgeschlüsselt nach Komponenten nach dem Stand der Kriterien suchen. Nur ein paar () explodieren und implodieren () oft vereinfacht und beschleunigt die Entscheidung auf.

Zum Beispiel, als Ergebnis der Vorarbeiten gebildet ein Array von Strings (Daten) im Bezirk auf, wie viele Kartoffeln jedes Dorf gesammelt: Unbekannt ImyaDerevnya und Volumen gesammelt, und wenn das Land in einer Reihe von Strings mehr Unternehmen betreibt, ist ImyaDerevnya.ImyaPredpriyatie und Wert durch „; " und so weiter alle Unternehmen. Berechnen Sie den Gesamtbetrag in diesem Fall gesammelt wird nicht möglich sein, aber wenn Sie tun impode ( „;“, $ aResult), wird eine lange Zeile sein, in dem das Paar – ImyaDerevnya / ImyaDerevnya.ImyaPredpriyatie – eine Sammlung von Größe – wird über die übertragen werden „;“. Führen Sie eine Reverse auf der resultierende, explodieren ( „;“, $ aResult) – ein Array von allen, die gesammelt und wie sie gesammelt und dann durch die Linien von allen nicht-numerischen Zeichen zu entfernen, haben wir nur die Zahlen, die Summe beträgt das Gesamtvolumen gesammelt.

In diesem Beispiel ermöglicht es der reguläre Ausdruck in PHP nicht zu viel zu sehen, sie sind einfach und erschwinglich Extrakt die gewünschten Zahlenwert. Schnell und effizient, egal, wie lange es die Namen der Dörfer und Unternehmen sein. Diese Lösung ist nicht ideal, aber es zeigt, dass die Regeln sollten nicht immer folgen. Oft ist es möglich, die gewünschten auf ungewöhnliche Weise zu erreichen.

Abstrahiert von der technischen Seite, die Codierung

Die Syntax des Algorithmus nicht sagen, wie es in Wirklichkeit aussieht. Allerdings bietet die gleiche Codierung der Seite, und Zeilen Skript (was in dem die Bilder gesucht wird) in das Problem stürzen ist seine technische Aspekte.

Man muss nicht nur wissen, was zu suchen, aber wo es zu tun, wann, wie viel, was sie ändern und wie. PHP formal reguläre Ausdrücke als vollständiger voll funktions Mechanismus seines eigenen ausgeführt, aber aus vielen Gründen, die Verwirklichung ihrer Pendants in vielen Sprachen unterschiedlich. Als allgemeine Regel gilt, bevor Sie ein bestimmtes Muster in einer bestimmten Werkzeugumgebung für eine bestimmte Aufgabe zu bewegen, ist es notwendig, qualitativ hochwertige Anpassung durchzuführen, prüfen Sie alle möglichen Optionen für die Quelldaten.

Auch wenn Sie Ihre eigenen Erfahrungen in PHP Entwicklung verwenden, reguläre Ausdrücke, Beispiele, Vorlagen und Design erfordern eine sorgfältige Prüfung. Dynamisch Ändern der Sprache Funktionalität, Syntax und Laufzeit.

Die Struktur und der Inhalt einer Vorlage

Was vorher in Form einer Kombination von Suchfunktionen geschrieben, conditionals, Ersatzoperationen, einfügen, löschen, ist eine Zeichenfolge nach bestimmten Regeln – Muster für reguläre Ausdrücke. In der Tat ist eine erhebliche Menge in einer bestimmten Art und Weise codiert und durch spezifische Regeln ausgeführt.

So wie es unmöglich ist, jede Debug-Sprache Betreiber zu tun, können Sie nicht mit einem regulären Ausdruck Muster debuggen, kann dieser Prozess nur emulieren. In der Regel Version angenommen: Werke – funktioniert nicht. Die Syntax ist sehr einfach, obwohl seine Wahrnehmung, vor allem am Anfang, ist sehr schwierig.

Ein Beispiel für einen einfachen Ausdruck

In einer einfachen Ausführung entspricht die Vorlage die Zeichenfolge:

$ CContents = preg_match ( "/ asdf / i", "asdf", $ aResult). ‚; ‘. implodieren ( '', $ aResult).

Das Ergebnis wird sein „1; asdf“, da die Funktion ihre Operation abgeschlossen ist bei der zuerst eine passende Schablone erfüllt. Das Ergebnis wird das gleiche sein, wenn wir in Zeile „aaaasdf“ in line „zzzasdfvvv“ aussehen. Wenn Sie die ersten und / oder letzte Zeichen angeben, wäre das Ergebnis klar:

$ CContents = preg_match ( "/ ^ asdf / i", "asdf", $ aResult). ‚; ‘. implodieren ( '', $ aResult). '
';
$ CContents. = preg_match ( "/ asdf $ /", "asdf", $ aResult). ‚; ‘. implodieren ( '', $ aResult). '
'.

Das Ergebnis wird sein: 1; asdf1; asdf.

Die Symbole „*“ und „$“ zeigt an, wo zu beginnen und das Endungsmuster. Ergebnis preg_match Funktion – die Anzahl der Spiele, es kann 0, 1 oder falsch, wenn ein Fehler erkannt wird. Die dritte Option – ein Array – nur gefunden Element platziert. Im Fall von preg_match_all Funktion () Suche weiterhin die Endlinie.

$ CContents = preg_match ( "/ asdf / i", "asdf123asdf456asdf789", $ aResult). ‚; ‘. implodieren ( '', $ aResult). '
';
$ CContents. = preg_match_all ( "/ asdf / i", "asdf123asdf456asdf789", $ aResult). ‚; ‘. implodieren ( '', $ aResult [0]). '
'.

Ergebnis:

1; asdf
3; asdf, asdf, asdf.

Wenn Sie keine speziellen Anweisungen verwenden, definiert jedes Zeichen selbst und seinen Platz, unabhängig von der Leitungscodierung und Template-Codierung. Der Programmierer muss sicherstellen, dass die Codierung dieser Elemente in Bezug zueinander und Codierung Seite korrekt war.

PHP-Funktionen für mit regulären Ausdrücken arbeiten

Reguläre Ausdrücke für PHP stellen eine Zeichenkette in einer bestimmten Art und Weise aufgezeichnet. In der Regel, analog zu anderen Programmiersprachen, werden sie in den Symbolen „/“ geschrieben … „/“ und in Anführungszeichen gesetzt, können Sie einfach oder doppelt je nach Algorithmus.

Die Hauptfunktion PHP-Preg-Spiel reguläre Ausdrücke verwendet sowohl Mustererkennung und hält ihn an der ersten Stelle, eine Variante davon mit einem Suffix _all alle Spiele findet, und gibt das Array davon. Funktion Preg ersetzen ersetzt jedes mit einer Schablone übereinstimmen, kann es mit Arrays arbeiten, sucht Design ermöglicht und den Austausch von einer Vielzahl von Optionen auszuführen.

Interessante Optionen für die mit regulären Ausdrücken arbeiten kann mit preg_replace_callback Funktion entwickelt werden, die keine Ersatztext, und der Name der Funktion übernimmt, die einen solchen Austausch durchführen wird. Neben dem praktischen Nutzen können Sie implementieren Mechanismen Muster zu überprüfen, dass die Entwicklung und das Debuggen der letzten eine bedeutende Rolle spielt.

Umfang von regulären Ausdrücken

Da Hypertext-Sprachen Informationen in größerem Umfang formalisiert werden, sind sie das Ausgangsmaterial. Entwickelt eine große Anzahl von Vorlagen und Designs, die große Datenmengen effizient bearbeiten zu können. Ein wesentlicher Teil dieser Arbeit ist es, Mechanismen in verschiedene Content Management Systeme (CMS) gebaut durchgeführt.

Es überrascht nicht, werden viele CMS de-facto-Standards für Baustellen und durch die (aktualisiert) Software-Unternehmen begleitet, die sie nicht machen es notwendig, die Entwicklung von Mustern aus eigener Kraft zu erfüllen. Jedoch außerhalb solcher Systeme haben Erfahrung mit regulären Ausdrücken sehr nützlich ist.

Reguläre Ausdrücke und die realen Informationen

Ein wichtiges Anwendungsgebiet von regulären Ausdrücken in PHP-Bibliotheken bildete das Aufkommen PHPOffice. Arbeiten mit Dokumenten, Tabellen und hatte schon immer wichtig und OOXML-Standard ist nicht nur möglich, die tatsächlichen Dokumente zu demontieren, sondern auch ihr Programm zu gestalten.

Durch die Entwicklung von Hypertext und PHP Sprachen insbesondere, gibt es eine echte Chance ist die „Herstellung“ von Dokumenten „Standardform“, zum Beispiel Rechnungen für die Zahlung, Berichte, Geschäftspläne und andere Informationsobjekte, die Struktur und die Inhalte sind tatsächlich zugänglich Formalisierung und Automatisierung zu automatisieren.

Im Zusammenhang mit der Anwendung des Sprache OOXML Entwicklungsprozess von regulären Ausdrücken zu beschreiben, ist ganz anders als die traditionellen Arbeiten mit Markup-Sprachen HTML und CSS in dem ersten Platz. Das eigentliche Dokument, mit Ausnahme Kennzeichnung und zusätzlich zu dem eigentlichen Inhalt hat viele Details. Zum Beispiel kann ein Dokument, das vom Programm automatisch erstellt wurde, wird einen starken und genauen Inhalt hat. Dokument gebildet oder die Person behandelt wird, einen Inhalt hat, wurde eine Vielzahl von Tags übermalt. Alle Arbeiten mit dem Dokument führt zu der Tatsache, dass die Semantik der es sein kann, aber in unterschiedlichen Mengen an unterschiedlichen Mustern bemalt.

Natürliche Informationen und Situation

Eine Person immer Interesse an der Lösung des Problems, die Informationen und, als Folge, die gleiche Information wird gegeben, inszeniert hat. Präsentation der Erklärung des Problems in Form eines Dokuments, bekommt eine Person eine bestimmte Semantik, die in der Beschreibung der Experten ist (Änderung Wortlaut Klärung, löschen, zu bearbeiten) führt nicht nur zu mehreren Versionen eines Dokuments, sondern auch auf seine Versionen mit unterschiedlichem Inhalt.

Insbesondere die Aufgabe durch die Phrase gesetzt „Löst Platz uranenie“ nach der Bearbeitung wird wie folgt aussehen: „eine quadratische Gleichung zu lösen“ Wenn zuerst wurde der erste Fehler korrigiert worden ist, und dann die zweite, dann könnte die natürliche Informationen in OOXML Stil wie folgt aussehen: "[gelöst] [] [square] [e] [] [cheers] [b] [nenie]", aber dies nicht garantieren, dass dies die Aufgabe in den Tags OOXML wird angezeigt ist (Klammern emulieren Klammer Tags).

Um die Informationen zusammenstellen kann nach jeder Aufgabe des Bearbeitungsprozess leicht sein, aber jedes Mal wird dieses Verfahren durch verschiedene Algorithmen durchgeführt werden. Reguläre Ausdrücke, als eine Art Werkzeug der Formalisierung von Informationen Problemen haben sich in der Tat Wege von den formalen Strukturen von Hypertext der natürlichen Informationen Gehen.