Jak korzystać z funkcji preg_match_all() w PHP

Jak Korzystac Z Funkcji Preg Match All W Php



preg_match_all() to wbudowana funkcja w PHP używana do dopasowania określonego wzorca w łańcuchu. Możesz użyć tej funkcji do wykonywania dopasowań wyrażeń regularnych i wyodrębniania danych z łańcuchów. Może zaoszczędzić czas i wysiłek w przypadkach, gdy trzeba szukać wielu wystąpień wzorca i jest szeroko stosowany w aplikacjach PHP do analizowania tekstu i ekstrakcji danych.

Składnia

Poniżej przedstawiono składnię korzystania z preg_match_all w PHP:







preg_match_all ( wzór , wejście , mecze , flagi , zrównoważyć )

The preg_match_all akceptuje następujące parametry, trzy są parametrami obowiązkowymi, a dwa są opcjonalne:



  • wzór : Jest to parametr obowiązkowy; zawiera wyrażenie regularne, które należy wyszukać.
  • wejście : Drugi jest również obowiązkowym parametrem, ponieważ jest to ciąg, w którym przeprowadzane jest wyszukiwanie.
  • mecze : Przechowuje dane wyjściowe w tablicy zawierającej wszystkie dopasowania.
  • flagi : Opisuje strukturę tablicy wyszukiwania lub dopasowań. Modyfikuje zachowanie wyszukiwania funkcji. Można użyć następujących flag:
  • zrównoważyć : Jest to opcjonalny parametr określający pozycję początkową wyszukiwania.
Flaga Opis
PREG_PATTERN_ORDER Wynikowa tablica zawiera wszystkie dopasowania tablicy dla każdego elementu wyrażenia regularnego.
PREG_SET_ORDER Każdy element tablicy dopasowań zawiera dopasowania z każdej grupy dla jednego ze znalezionych dopasowań ciągu.
PREG_OFFSET_CAPTURE Zwraca dopasowania z odpowiadającymi im pozycjami przesunięcia bajtów w ciągu podmiotu.
PREG_UNMATCHED_AS_NULL Niedopasowane wzorce będą zgłaszane jako NULL.

Przykład 1

Rozważ następujący przykład użycia preg_match_all() funkcja w PHP. W tym kodzie szukamy słowa Linuks w ciągu. Ta funkcja wyświetla liczbę znalezionych dopasowań do słowa Linuks :





$string = „Witajcie entuzjaści Linuksa, witajcie w LinuxHint!” ;

$wzór = '/Linux/' ;

$dopasowania = szyk ( ) ;

preg_match_all ( $wzór , $string , $dopasowania ) ;

drukuj_r ( $dopasowania [ 0 ] ) ;

?>





Przykład 2

W tym przykładowym kodzie szukamy słowa E w łańcuchu. Małe i jest używane, aby wyszukiwanie nie uwzględniało wielkości liter. Zwróci wszystkie wystąpienia ciągu słowa E lub e:



$string = „WITAJCIE W USA”. ;

$patternRex = '/E/i' ;

Znaleziono $dopasowanie = preg_match_all ( $patternRex , $string , $dopasowania ) ;

Jeśli ( Znaleziono $dopasowanie ) {

Echo '
'  ; 

drukuj_r ( $dopasowania ) ;

}

?>



Przykład 3

Jeśli szukanego wzorca nie ma w łańcuchu, funkcja zwróci fałsz, co oznacza błąd. Aby sobie z tym poradzić, możesz użyć instrukcji if-else. Jeśli wzorzec nie zostanie znaleziony, możesz wydrukować komunikat za pomocą instrukcji else, aby poinformować użytkownika, że ​​wzorzec nie został znaleziony.



$string = „PHP to popularny język skryptowy” ;

$patternRex = '/robić siku/' ;

Znaleziono $dopasowanie = preg_match_all ( $patternRex , $string , $dopasowania ) ;

Jeśli ( Znaleziono $dopasowanie ) {

Echo '
'  ; 

Echo 'Znaleziono dopasowanie.' ;

drukuj_r ( $dopasowania ) ;

} w przeciwnym razie {

Echo „Nie znaleziono dopasowania”. ;

}

?>

Notatka :

   tag w powyższym kodzie służy do formatowania danych wyjściowych.

Dolna linia

Wyrażenia regularne są potężnym narzędziem do wyszukiwania i manipulowania tekstem w PHP. The preg_match_all() function jest wbudowaną funkcją PHP, która jest używana do wykonywania dopasowania wyrażenia regularnego do łańcucha i pobierania wszystkich wystąpień wzorca, a jeśli wzorzec nie istnieje, zwróci fałsz. Zrozumienie preg_match_all() pomoże użytkownikom lepiej obsługiwać i przetwarzać dane tekstowe w PHP.