Συνάρτηση preg_split
Η συνάρτηση preg_split χωρίζει μια συμβολοσειρά σε στοιχεία πίνακα, χρησιμοποιώντας μια κανονική έκφραση για την εύρεση των διαχωριστικών. Ως πρώτη παράμετρο δέχεται την κανονική έκφραση, ως δεύτερη - την αρχική συμβολοσειρά. Η τρίτη προαιρετική παράμετρος ορίζει τον αριθμό των στοιχείων του πίνακα στο τελικό αποτέλεσμα. Η τέταρτη προαιρετική παράμετρος ορίζει
τις σημαίες που αλλάζουν τη συμπεριφορά της συνάρτησης.
Σύνταξη
preg_split(pattern, subject, [limit], [flags]);
Σημαίες
| Σημαία | Σταθερά | Περιγραφή |
|---|---|---|
PREG_SPLIT_NO_EMPTY |
1 | Επιστρέφει μόνο τα μη κενά μέρη μετά τον διαχωρισμό. |
PREG_SPLIT_DELIM_CAPTURE |
2 | Παγιδεύει και επιστρέφει τα μέρη της αντιστοίχισης με υπομοτίβους στην κανονική έκφραση. |
PREG_SPLIT_OFFSET_CAPTURE |
4 | Για κάθε επιστρεφόμενο μέρος προσθέτει τη θέση του στην αρχική συμβολοσειρά. |
Παράδειγμα
Διαχωρίζουμε μια συμβολοσειρά με κόμματα:
<?php
$res = preg_split('/,/', 'a,b,c,d,e');
var_dump($res);
?>
Αποτέλεσμα εκτέλεσης κώδικα:
['a', 'b', 'c', 'd', 'e']
Παράδειγμα
Διαχωρίζουμε μια συμβολοσειρά με οποιοδήποτε κενό χαρακτήρα με περιορισμό του αριθμού των στοιχείων:
<?php
$res = preg_split('/\s+/', '1 2 3 4 5', 3);
var_dump($res);
?>
Αποτέλεσμα εκτέλεσης κώδικα:
['1', '2', '3 4 5']
Παράδειγμα
Χρήση της σημαίας PREG_SPLIT_NO_EMPTY για τον αποκλεισμό κενών στοιχείων:
<?php
$res = preg_split('/[,\s]/', 'a,b, c, ,d', -1, PREG_SPLIT_NO_EMPTY);
var_dump($res);
?>
Αποτέλεσμα εκτέλεσης κώδικα:
['a', 'b', 'c', 'd']
Δείτε επίσης
-
τη συνάρτηση
preg_match,
που εκτελεί αναζήτηση με κανονική έκφραση -
τη συνάρτηση
explode,
που διαχωρίζει μια συμβολοσειρά με απλό διαχωριστικό