Maison > développement back-end > tutoriel php > Comment extraire des sous-chaînes entre délimiteurs en PHP ?

Comment extraire des sous-chaînes entre délimiteurs en PHP ?

Mary-Kate Olsen
Libérer: 2025-01-03 06:46:39
original
521 Les gens l'ont consulté

How to Extract Substrings Between Delimiters in PHP?

Comment extraire des sous-chaînes entre des délimiteurs spécifiés en PHP

Pour les scénarios où vous devez obtenir la sous-chaîne située entre deux chaînes spécifiques, PHP fournit fonctions pratiques pour accomplir cette tâche.

Pour extraire une sous-chaîne entre deux chaînes, comme 'foo' et 'foo', utilisez la fonction suivante :

function getInnerSubstring($string, $delim) {
  $start = strpos($string, $delim);
  if ($start === false) {
    return '';
  }

  $end = strpos($string, $delim, $start + strlen($delim));
  if ($end === false) {
    return '';
  }

  return substr($string, $start + strlen($delim), $end - $start - strlen($delim));
}
Copier après la connexion

Un exemple d'utilisation et de résultat :

$string = "foo I wanna a cake foo";
$substring = getInnerSubstring($string, "foo");
echo $substring; // Output: " I wanna a cake "
Copier après la connexion

Pour un cas d'utilisation plus avancé, vous pouvez étendre la fonction pour récupérer plusieurs sous-chaînes incluses dans plusieurs paires de délimiteurs. Prenons l'exemple suivant :

$string = "foo I like php foo, but foo I also like asp foo, foo I feel hero  foo";
$result = getInnerSubstrings($string, "foo");
echo json_encode($result); // Output: ["I like php", "I also like asp", "I feel hero"]
Copier après la connexion

Dans cette fonction mise à jour, nous introduisons une boucle pour parcourir la chaîne et collecter toutes les sous-chaînes correspondant aux délimiteurs spécifiés. La fonction renvoie un tableau de sous-chaînes.

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 de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal