English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Manuale di base PHP

Manuale avanzato PHP

PHP & MySQL

Manuale di riferimento PHP

Uso e esempio della funzione PHP preg_split()

PHP Esepressioni Regolari (PCRE)

La funzione preg_replace separa una stringa con un'espressione regolare.

Sintassi

array preg_split ( string $pattern , string $subject [, int $limit = -1 [, int $flags = 0 ]] )

Divide una stringa data con un'espressione regolare.

Spiegazione dei parametri:

  • $pattern: modello da cercare, in forma di stringa.

  • $subject: stringa di input.

  • $limit: opzionale, se specificato, limiterà il numero massimo di sottostringhe separate a $limit, la sottostringa finale conterrà tutti i restanti segmenti. I valori di $limit -1, 0 o null rappresentano "nessun limite", come standard php, puoi usare null per saltare la configurazione di $flags.

  • $flags: opzionale, può essere qualsiasi combinazione di segni di marcia combinati (operazione di OR bit):

    • PREG_SPLIT_NO_EMPTY: Se questo segno è impostato, preg_split() restituirà solo parti non vuote divise.
    • PREG_SPLIT_DELIM_CAPTURE: Se questo segno è impostato, l'espressione tra parentesi graffe del modello di separazione viene catturata e restituita.
    • PREG_SPLIT_OFFSET_CAPTURE: Se questo segno è impostato, alla fine di ogni occorrenza del match verrà aggiunta la stringa di offset. Attenzione: questo cambierà ogni elemento dell'array di ritorno, rendendo ogni elemento un array che contiene il sottostringa diviso come elemento 0 e l'offset del sottostringa nell'oggetto subject come elemento 1.

Valore di ritorno

Restituisce un array di sottostringhe ottenute dividendo l'oggetto subject con il pattern specificato.

Esempio online

<?php
//Usare virgola o spazio (inclusi " ", \r, \t, \n, \f) per separare frasi
$keywords = preg_split("/[\s,]+/", "hypertext language, programming");
print_r($keywords);
?>

I risultati dell'esecuzione sono come segue:

Array
(
    [0] => hypertext
    [1] => language
    [2] => programming
)
<?php
$str = 'w3codebox';
$chars = preg_split('//', $str, -1, PREG_SPLIT_NO_EMPTY);
print_r($chars);
?>

I risultati dell'esecuzione sono come segue:

Array
(
    [0] => r
    [1] => u
    [2] => n
    [3] => o
    [4] => o
    [5] => b
)
<?php
$str = 'hypertext language programming';
$chars = preg_split('/ /', $str, -1, PREG_SPLIT_OFFSET_CAPTURE);
print_r($chars);
?>

I risultati dell'esecuzione sono come segue:

Array
(
    [0] => Array
        (
            [0] => hypertext
            [1] => 0
        )
    [1] => Array
        (
            [0] => language
            [1] => 10
        )
    [2] => Array
        (
            [0] => programming
            [1] => 19
        )
)

PHP Esepressioni Regolari (PCRE)