Maison >développement back-end >C++ >Comment puis-je extraire une sous-chaîne entre deux séquences de caractères spécifiques dans une chaîne ?

Comment puis-je extraire une sous-chaîne entre deux séquences de caractères spécifiques dans une chaîne ?

Linda Hamilton
Linda Hamiltonoriginal
2025-01-23 00:21:13556parcourir

How Can I Extract a Substring Between Two Specific Character Sequences in a String?

Extraire des segments de texte à partir de chaînes

Une tâche courante de manipulation de chaîne consiste à isoler une sous-chaîne spécifique située entre deux séquences de marqueurs connues. Illustrons cela avec un exemple clair.

Considérez la chaîne : "super exemple de clé de chaîne : texte que je souhaite conserver - fin de ma chaîne". Notre objectif est d'extraire uniquement le texte entre "key : " et "-". Nous éviterons les expressions régulières complexes et opterons pour une méthode plus simple et plus directe.

Cela peut être réalisé en utilisant la méthode Substring. Cette méthode nécessite deux arguments : l'index de départ de la sous-chaîne et sa longueur.

Mise en œuvre de la solution :

<code class="language-java">String St = "super example of string key : text I want to keep - end of my string";

int pFrom = St.indexOf("key : ") + "key : ".length();
int pTo = St.lastIndexOf(" - ");

String result = St.substring(pFrom, pTo - pFrom);</code>

Le code trouve d'abord l'index de "key : " et ajuste la position de départ (pFrom) pour qu'elle soit juste après le marqueur. Il trouve ensuite la dernière occurrence de "-" pour déterminer la position de fin (pTo). Enfin, il extrait la sous-chaîne de pFrom jusqu'à une longueur calculée comme la différence entre pTo et pFrom.

La variable result contiendra désormais la sous-chaîne souhaitée : "texte que je souhaite conserver". Cette méthode offre une solution claire et efficace sans avoir besoin de modèles d'expressions régulières complexes.

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:
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