Maison  >  Article  >  développement back-end  >  Fonction preg_replace_callback_array() en PHP 7

Fonction preg_replace_callback_array() en PHP 7

PHPz
PHPzavant
2023-08-19 13:41:021589parcourir

PHP 7中的preg_replace_callback_array()函数

La fonction Preg_replace_callback_array() représente une expression régulière en PHP 7 et remplace l'utilisation de fonctions de rappel. Cette fonction renvoie une chaîne ou un tableau de chaînes pour correspondre à un ensemble d'expressions régulières et les remplace à l'aide d'une fonction de rappel.

Syntaxe

preg_replace_callback_array(patterns, input, limit, count)

Valeur du paramètre :

  • pattern −Il nécessite un tableau associatif pour associer le modèle d'expression régulière à la fonction de rappel.
  • input/subject −Il nécessite un tableau de chaînes pour effectuer le remplacement.
  • limite −C'est facultatif. Par défaut, -1 est utilisé, ce qui signifie aucune limite. Il fixe une limite au nombre de substitutions pouvant être effectuées dans chaque chaîne.
  • compte −C'est également facultatif, tout comme la limite. Cette variable contiendra un nombre indiquant combien de substitutions ont été effectuées après l'exécution de la fonction.
  • flags −Il peut s'agir d'une combinaison de drapeaux preg_offset_capture et preg_unmatched_as_null, qui affectent le format du tableau correspondant.
  • Valeur de retour −preg_replace_callback_array() renvoie une chaîne ou un tableau de chaînes. Si une erreur est trouvée, une valeur nulle est renvoyée. Si une correspondance est trouvée, le nouveau sujet est renvoyé, sinon le sujet inchangé est renvoyé.

Preg_replace_callback_array() : Exemple

Démonstration

<html>
<head>
<title> PHP 7 Featuretutorialpoint:</title>
</head>
<body>
<?php
   $subject = &#39;AaaaaaaBbbbCccc&#39;;
   preg_replace_callback_array (
      [
         &#39;~[a]+~i&#39; => function ($match) {
            echo strlen($match[0]), &#39; number of "a" found&#39;, PHP_EOL;
         },
         &#39;~[b]+~i&#39; => function ($match) {
            echo strlen($match[0]), &#39; number of "b" found&#39;, PHP_EOL;
         },
         &#39;~[c]+~i&#39; => function ($match) {
            echo strlen($match[0]), &#39; number of "c" found&#39;, PHP_EOL;
         }
      ],
      $subject
   );
?>
</body>
</html>

Output

La sortie du code de programme ci-dessus est −

7 number of "a" found
4 number of "b" found
5 number of "c" found

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer