Loading:


    preg_match
    int preg_match ( string $pattern , string $subject [, array &$matches [, int $flags [, int $offset ]]] )


    preg_match — wykonuje pasujące wyrażenia regularne


    wzsyukuje  tematw pasujczch do danego wyrażenia regularnego podanego we wzorze.


    Parametry

     

    pattern

    Wzorzec do wyszukiwania, jako ciąg znaków.

    subject

    ciąg wejściowy.

    matches

    Jeśli dopasowóje się, jest on wypełniany wynikami wyszukiwania. $matches[0] będzie zawierał tekst, który w pełni odpowiada wzorcowi, $matches [1] będzie miał tekst, który pasuje  pierwszemu przejentemu  podwzorcowi, i tak dalej.

    flags
    flagi mogą być następujące:

     

     

    PREG_OFFSET_CAPTURE
    If this flag is passed, for every occurring match the appendant string offset will also be returned. Note that this changes the return value in an array where every element is an array consisting of the matched string at index 0 and its string offset into subject at index 1.

    offset
    Normalnie, wyszukiwanie rozpoczyna się od początku a}cucha ynakw. Opcjonalny parametr offset moe być wykorzystanz, aby określić miejsce, z którego ma si roypocy wzsyukiwanie (w bajtach).


    <?php
    $subject 
    "abcdef";
    $pattern '/^def/';
    preg_match($pattern$subject$matchesPREG_OFFSET_CAPTURE3);
    print_r($matches);
    ?>

    Powyższy przykład wyświetli:

    Array
    (
    )

    podczas gdy np


    <?php
    $subject 
    "abcdef";
    $pattern '/^def/';
    preg_match($patternsubstr($subject,3), $matchesPREG_OFFSET_CAPTURE);
    print_r($matches);
    ?>

     

    będzie produkować

    Array
    (
    [0] => Array
    (
    [0] => def
    [1] => 0
    )

    )


    Zwracane wartości


    preg_match () zwraca ile razy dopasowano wzór. Będzie albo 0 (nie pasuje) lub 1 raz, ponieważ preg_match () zatrzyma wyszukiwanie po pierwszym dopasowaniu. preg_match_all () wręcz przeciwnie będzie w dalszym ciągu dopasowywał aż do końca ciągu. preg_match () zwraca FALSE jeśli wystąpił błąd.



    Napisz Artyku³

    Listing


    //Example #1 Znajdź ciąg tekstu "php"

    <?php
    // "i" po strukturze separator wskazuje na wielkość znaków wyszukiwania

    if (preg_match("/php/i", "PHP  jest webowym językiem skryptowym wyboru.")) {
        echo "dopasowanie zostało znalezione.";
    } else {
        echo "dopasowanie nie zostało znalezione.";
    }
    ?>

    //Example #2 znajdź słowo "web"
    <?php
    /*  \b w strukturze oznacza słowo granicy, a więc tylko odrębne
     * słowo "web" jest pasujące, i nie pasuje słowo typu "webbing" lub "cobweb" */

    if (preg_match("/\bweb\b/i", "PHP  jest webowym językiem skryptowym wyboru.")) {
        echo "A match was found.";
    } else {
        echo "A match was not found.";
    }

    if (preg_match("/\bweb\b/i", "PHP  jest webowym językiem skryptowym wyboru.")) {
        echo "dopasowanie  zostało znalezione.";
    } else {
        echo "dopasowanie nie zostało znalezione.";
    }
    ?>

    Example #3 pobranie nazwy domeny z adresu URL

    <?php
    // pobranie nazwy hosta z adresu URL
    preg_match('@^(?:http://)?([^/]+)@i',
        "http://www.funkcje.net/index.html", $matches);
    $host = $matches[1];

    // pobranie dwóch ostatnich segmentó nazwy hosta
    preg_match('/[^.]+\.[^.]+$/', $host, $matches);
    echo "domain name is: {$matches[0]}\n";
    ?>

    //Powyższy przykład wyświetli:

    domena to : funkcje.net


       

    //Example #4 użycie nazwy podwzorca
    <?php

    $str = 'foobar: 2008';

    preg_match('/(?<name>\w+): (?<digit>\d+)/', $str, $matches);

    print_r($matches);

    ?>

    //Powyższy przykład wyświetli:

    Array
    (
        [0] => foobar: 2008
        [name] => foobar
        [1] => foobar
        [digit] => 2008
        [2] => 2008
    )


       

     




    Dodano przez: igor
    Ranga: Administrator serwisu Punktów: 0
    Komentarze użytkowników
      • Tre¶æ komentarza
        Kod do komentarza (opcjonalnie)
        PHP JavaScript MySQL Smarty SQL HTML CSS ActionScript
        Autor
        Token
        token

         

         








    funkcje.net
    Wszelkie prawa zastrzeżone©. | Funkcje.net 2008-2025 v.1.5 | design: diviXdesign & rainbowcolors