PHP Chaîne correspondant aux expressions régulières


Exemple

preg_match vérifie si une chaîne correspond à l'expression régulière.

$string = 'This is a string which contains numbers: 12345';

$isMatched = preg_match('%^[a-zA-Z]+: [0-9]+$%', $string);
var_dump($isMatched); // bool(true)

Si vous passez un troisième paramètre, il sera renseigné avec les données correspondantes de l'expression régulière:

preg_match('%^([a-zA-Z]+): ([0-9]+)$%', 'This is a string which contains numbers: 12345', $matches);
// $matches now contains results of the regular expression matches in an array.
echo json_encode($matches); // ["numbers: 12345", "numbers", "12345"]

$matches contient un tableau de la correspondance complète, puis des sous-chaînes dans l'expression régulière délimitée par des parenthèses, dans l'ordre du décalage entre parenthèses ouvertes. Cela signifie que si vous avez /z(a(b))/ comme expression régulière, index 0 contient la sous-chaîne entière zab , index 1 contient la sous-chaîne limitée par les parenthèses externes ab et index 2 contient les parenthèses internes b .