Προγραμματισμός

Γνώση Υπολογιστών >> Προγραμματισμός >  >> PHP /MySQL Προγραμματισμός

Πώς να χρησιμοποιήσετε το preg_match στην PHP [Εξηγείται με παραδείγματα]

Η συνάρτηση `preg_match()` στην PHP χρησιμοποιείται για την αναζήτηση μιας συμβολοσειράς για ένα μοτίβο και επιστρέφει πληροφορίες σχετικά με την αντιστοίχιση. Η σύνταξη της συνάρτησης `preg_match()` είναι η εξής:

```php

int preg_match ( συμβολοσειρά $pattern, string $subject, πίνακας &$match [, int $flags =0 [, int $offset =0 ]] )

```

Οπου,

- $pattern: Το μοτίβο για αναζήτηση. Αυτό μπορεί να είναι μια απλή συμβολοσειρά ή μια τυπική έκφραση.

- $subject: Η συμβολοσειρά για αναζήτηση.

- &$matches: Ένας πίνακας που θα γεμίσει με τα αποτελέσματα της αναζήτησης.

- $flags: Προαιρετικές σημαίες που μπορούν να χρησιμοποιηθούν για την τροποποίηση της συμπεριφοράς της συνάρτησης.

- $offset: Προαιρετική μετατόπιση από την οποία θα πρέπει να ξεκινήσει η αναζήτηση.

Παράδειγμα 1:Απλή αναζήτηση συμβολοσειρών

```php

$subject ="Η γρήγορη καφετιά αλεπού πηδά πάνω από τον τεμπέλικο σκύλο.";

$pattern ="/αλεπού/";

preg_match($pattern, $subject, $match);

print_r($ταιριάζει);

```

Παραγωγή:

```

Παράταξη

(

[0] => αλεπού

)

```

Σε αυτό το παράδειγμα, το `$pattern` είναι μια απλή συμβολοσειρά "αλεπού". Ο πίνακας "$ matches" θα περιέχει την πρώτη εμφάνιση του μοτίβου στη συμβολοσειρά "$subject".

Παράδειγμα 2:Αναζήτηση τυπικών εκφράσεων

```php

$subject ="Η γρήγορη καφετιά αλεπού πηδά πάνω από τον τεμπέλικο σκύλο.";

$pattern ="/^The.*$/";

preg_match($pattern, $subject, $match);

print_r($ταιριάζει);

```

Παραγωγή:

```

Παράταξη

(

[0] => Η γρήγορη καφετιά αλεπού πηδά πάνω από το τεμπέλικο σκυλί.

)

```

Σε αυτό το παράδειγμα, το `$pattern` είναι μια κανονική έκφραση που ταιριάζει με οποιαδήποτε συμβολοσειρά που ξεκινά με "The" και τελειώνει με τελεία. Ο πίνακας `$matches` θα περιέχει ολόκληρη τη συμβολοσειρά που αντιστοιχεί.

Παράδειγμα 3:Σημαίες

Το όρισμα "$flags" μπορεί να χρησιμοποιηθεί για την τροποποίηση της συμπεριφοράς της συνάρτησης "preg_match()". Μερικές κοινές σημαίες είναι:

- PREG_OFFSET_CAPTURE: Αυτή η σημαία κάνει το `preg_match()` να επιστρέψει την αρχική μετατόπιση κάθε αγώνα στον πίνακα `$matches`.

- PREG_IGNORE_CASE: Αυτή η σημαία κάνει το `preg_match()` να αγνοεί πεζά και πεζά όταν ταιριάζει με το μοτίβο.

- PREG_MULTILINE: Αυτή η σημαία κάνει το `preg_match()` να αντιμετωπίζει τη συμβολοσειρά "$subject" ως πολλές γραμμές.

Ακολουθεί ένα παράδειγμα χρήσης της σημαίας `PREG_OFFSET_CAPTURE`:

```php

$subject ="Η γρήγορη καφετιά αλεπού πηδά πάνω από τον τεμπέλικο σκύλο.";

$pattern ="/αλεπού/";

preg_match($pattern, $subject, $match, PREG_OFFSET_CAPTURE);

print_r($ταιριάζει);

```

Παραγωγή:

```

Παράταξη

(

[0] => Πίνακας

(

[0] => αλεπού

[1] => 16

)

)

```

Σε αυτό το παράδειγμα, ο πίνακας "$matches" περιέχει την αρχική μετατόπιση της αντιστοίχισης στη συμβολοσειρά "$subject".

Συμπέρασμα

Η συνάρτηση `preg_match()` είναι ένα ισχυρό εργαλείο για την αναζήτηση συμβολοσειρών για μοτίβα. Χρησιμοποιώντας κανονικές εκφράσεις, μπορείτε εύκολα να βρείτε και να εξάγετε πληροφορίες από το κείμενο.

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα