⊗ppPmRgInr 223 of 447 menu

Εισαγωγή στις Κανονικές Εκφράσεις στην PHP

Οι κανονικές εκφράσεις είναι εντολές για σύνθετη αναζήτηση και αντικατάσταση. Επιτρέπουν να κάνουμε πολύ ενδιαφέροντα πράγματα, αλλά, δυστυχώς, είναι αρκετά δύσκολες στην εκμάθηση.

Υπάρχουν αρκετές συναρτήσεις PHP για εργασία με κανονικές εκφράσεις. Θα αρχίσουμε να γνωρίζουμε αυτές με το παράδειγμα της preg_replace. Αυτή η συνάρτηση δέχεται ως πρώτη παράμετρο τι να αντικαταστήσει, ως δεύτερη - με τι να αντικαταστήσει, και ως τρίτη παράμετρο - τη συμβολοσειρά στην οποία πρέπει να γίνει η αντικατάσταση:

<?php preg_replace(τι να αντικαταστήσει, με τι, συμβολοσειρά); ?>

Σε αυτή την περίπτωση, η πρώτη παράμετρος της συνάρτησής μας δέχεται όχι απλώς μια συμβολοσειρά, αλλά μια κανονική έκφραση, που αντιπροσωπεύει μια συμβολοσειρά με ένα σύνολο εντολών, που βρίσκονται μέσα στους χαρακτήρες #. Αυτά τα δίεση ονομάζονται οριοθετητές των κανονικών εκφράσεων.

Μετά τους οριοθετητές μπορούμε να γράψουμε τροποποιητές - εντολές που αλλάζουν τις γενικές ιδιότητες της κανονικής έκφρασης.

Οι ίδιες οι κανονικές εκφράσεις αποτελούνται από δύο τύπους συμβόλων: από αυτά που συμβολίζουν τον εαυτό τους και από σύμβολα-εντολές, που ονομάζονται ειδικοί χαρακτήρες.

Τα γράμματα και οι αριθμοί συμβολίζουν τον εαυτό τους. Στο ακόλουθο παράδειγμα, θα αντικαταστήσουμε το γράμμα 'a' με '!' χρησιμοποιώντας κανονική έκφραση:

<?php preg_replace('#a#', '!', 'bab'); // θα επιστρέψει 'b!b' ?>

Ενώ η τελεία είναι ένας ειδικός χαρακτήρας και συμβολίζει οποιονδήποτε χαρακτήρα. Στο ακόλουθο παράδειγμα, θα βρούμε μια συμβολοσειρά σύμφωνα με το ακόλουθο μοτίβο: γράμμα 'x', μετά οποιοσδήποτε χαρακτήρας, μετά πάλι γράμμα 'x':

<?php preg_replace('#x.x#', '!', 'xax eee'); // θα επιστρέψει '! eee' ?>

Δίνεται η συμβολοσειρά:

<?php $str = 'ahb acb aeb aeeb adcb axeb'; ?>

Γράψτε μια κανονική έκφραση που θα βρει τις συμβολοσειρές 'ahb', 'acb', 'aeb' σύμφωνα με το μοτίβο: γράμμα 'a', οποιοσδήποτε χαρακτήρας, γράμμα 'b'.

Δίνεται η συμβολοσειρά:

<?php $str = 'ahb acb aeb aeeb adcb axeb'; ?>

Γράψτε μια κανονική έκφραση που θα βρει τις συμβολοσειρές 'aeeb', 'adcb', 'axeb' σύμφωνα με το μοτίβο: γράμμα 'a', δύο οποιοιδήποτε χαρακτήρες, γράμμα 'b'.

Ελληνικά
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Χρησιμοποιούμε cookie για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη