202 of 410 menu

Συνάρτηση preg_filter

Η συνάρτηση preg_filter εκτελεί αναζήτηση και αντικατάσταση σε μια συμβολοσειρά ή πίνακα συμβολοσειρών με κανονική έκφραση. Σε αντίθεση με την preg_replace, επιστρέφει μόνο εκείνα τα στοιχεία στα οποία βρέθηκε αντιστοίχιση. Ως πρώτη παράμετρο δέχεται μια κανονική έκφραση, ως δεύτερη - μια συμβολοσειρά αντικατάστασης, ως τρίτη - μια συμβολοσειρά ή πίνακα για επεξεργασία. Στην τέταρτη προαιρετική παράμετρο μπορείτε να ορίσετε τον μέγιστο αριθμό αντικαταστάσεων σε κάθε στοιχείο (by default -1, που σημαίνει "χωρίς περιορισμούς"). Στην πέμπτη προαιρετική παράμετρο καθορίζεται η μεταβλητή στην οποία θα καταγραφεί ο αριθμός των εκτελεσμένων αντικαταστάσεων.

Σύνταξη

preg_filter(pattern, replacement, subject, [limit = -1], [count]);

Παράδειγμα

Ας αντικαταστήσουμε όλους τους αριθμούς στη συμβολοσειρά με τον χαρακτήρα 'X':

<?php $res = preg_filter('/\d/', 'X', 'a1b2c3'); var_dump($res); ?>

Αποτέλεσμα εκτέλεσης κώδικα:

'aXbXcX'

Παράδειγμα

Ας επεξεργαστούμε έναν πίνακα συμβολοσειρών, αντικαθιστώντας τους αριθμούς με '#':

<?php $res = preg_filter('/\d/', '#', ['a1', 'b2', 'c', 'd4']); var_dump($res); ?>

Αποτέλεσμα εκτέλεσης κώδικα:

['a#', 'b#', 'd#']

Παράδειγμα

Ας δείξουμε τη διαφορά από την preg_replace:

<?php $input = ['a1', 'b2', 'c', 'd4']; $res_filter = preg_filter('/\d/', '#', $input); $res_replace = preg_replace('/\d/', '#', $input); echo "Filter result: "; var_dump($res_filter); echo "Replace result: "; var_dump($res_replace); ?>

Αποτέλεσμα εκτέλεσης κώδικα:

Filter result: ['a#', 'b#', 'd#'] Replace result: ['a#', 'b#', 'c', 'd#']

Δείτε επίσης

  • τη συνάρτηση preg_replace,
    που εκτελεί αντικατάσταση με κανονική έκφραση
  • τη συνάρτηση preg_match,
    που ελέγχει αν αντιστοιχεί σε κανονική έκφραση
Ελληνικά
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 για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη