Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Ako používať preg_match v PHP [Vysvetlené na príkladoch]

Funkcia `preg_match()` v PHP sa používa na vyhľadávanie vzoru v reťazci a vracia informácie o zhode. Syntax funkcie `preg_match()` je nasledovná:

```php

int preg_match ( string $vzor, ​​string $predmet, pole &$zhody [, int $flags =0 [, int $offset =0 ]] )

```

kde,

- $vzor: Vzor, ktorý treba hľadať. Môže to byť jednoduchý reťazec alebo regulárny výraz.

- $predmet: Reťazec na vyhľadávanie.

- &$zhody: Pole, ktoré bude vyplnené výsledkami vyhľadávania.

- $flags: Voliteľné príznaky, ktoré možno použiť na úpravu správania funkcie.

- offset $: Voliteľný posun, pri ktorom by sa malo vyhľadávanie začať.

Príklad 1:Jednoduché vyhľadávanie reťazcov

```php

$subject ="Rýchla hnedá líška preskočí lenivého psa.";

$vzor ="/líška/";

preg_match($vzor, ​​$predmet, $zhody);

print_r($zhody);

```

výstup:

```

Pole

(

[0] => líška

)

```

V tomto príklade je „vzor $“ jednoduchý reťazec „líška“. Pole `$matches` bude obsahovať prvý výskyt vzoru v reťazci `$subject`.

Príklad 2:Vyhľadávanie regulárneho výrazu

```php

$subject ="Rýchla hnedá líška preskočí lenivého psa.";

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

preg_match($vzor, ​​$predmet, $zhody);

print_r($zhody);

```

výstup:

```

Pole

(

[0] => Rýchla hnedá líška preskočí lenivého psa.

)

```

V tomto príklade je `$vzor` regulárny výraz, ktorý sa zhoduje s ľubovoľným reťazcom, ktorý začína znakom „The“ a končí bodkou. Pole `$matches` bude obsahovať celý zodpovedajúci reťazec.

Príklad 3:Príznaky

Argument `$flags` možno použiť na úpravu správania funkcie `preg_match()`. Niektoré bežné príznaky sú:

- PREG_OFFSET_CAPTURE: Tento príznak spôsobí, že `preg_match()` vráti počiatočný posun každej zhody v poli `$matches`.

- PREG_IGNORE_CASE: Tento príznak spôsobí, že `preg_match()` pri porovnávaní vzoru ignoruje malé a veľké písmená.

- PREG_MULTILINE: Tento príznak spôsobí, že `preg_match()` bude s reťazcom `$subject` zaobchádzať ako s viacerými riadkami.

Tu je príklad použitia príznaku „PREG_OFFSET_CAPTURE“:

```php

$subject ="Rýchla hnedá líška preskočí lenivého psa.";

$vzor ="/líška/";

preg_match($vzor, ​​$predmet, $zhody, PREG_OFFSET_CAPTURE);

print_r($zhody);

```

výstup:

```

Pole

(

[0] => Pole

(

[0] => líška

[1] => 16

)

)

```

V tomto príklade pole `$matches` obsahuje počiatočný posun zhody v reťazci `$subject`.

Záver

Funkcia `preg_match()` je výkonný nástroj na vyhľadávanie vzorov v reťazcoch. Pomocou regulárnych výrazov môžete ľahko nájsť a extrahovať informácie z textu.

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené