====== Expressions Régulières ======
Liens :
* [[https://www.regexpal.com/|Regex Tester]]
* [[https://regex101.com/|Online regex tester and debugger]] => Avec générateur de code en PHP et autres :-)
$str = 'Bonjour, "Marc". [49 cm]';
$re = '/^(\S+), "(\S+)". \[(\S+) cm\]$/m';
preg_match($re, $str, $matches, PREG_OFFSET_CAPTURE, 0);
print_r($matches);
Array
(
[0] => Array
(
[0] => Bonjour, "Marc". [49 cm]
[1] => 0
)
[1] => Array
(
[0] => Bonjour
[1] => 0
)
[2] => Array
(
[0] => Marc
[1] => 10
)
[3] => Array
(
[0] => 49
[1] => 18
)
)
Le premier élément du tableau est une copie de la chaîne d'origine.
Chaque élément du tableau est un tableau de deux éléments :
* [0] : valeur de l'élément
* [1] : position de l'élément dans la chaîne
print($matches[0][0]); // même chose que print $str
print($matches[1][0]); // Bonjour
print($matches[2][0]); // Marc
print($matches[3][0]); // 49