Maison > développement back-end > C++ > Rechercher des mots préfixés par un mot donné dans une phrase donnée

Rechercher des mots préfixés par un mot donné dans une phrase donnée

WBOY
Libérer: 2023-08-27 20:09:11
avant
820 Les gens l'ont consulté

Rechercher des mots préfixés par un mot donné dans une phrase donnée

Lorsqu'il s'agit de traitement du langage naturel ou d'analyse de texte, vous devez souvent rechercher un mot ou une expression spécifique dans un corps de texte plus vaste. Une tâche courante consiste à trouver tous les mots d’une phrase commençant par un préfixe donné. Dans cet article, nous explorerons comment accomplir cette tâche en utilisant C++.

Algorithme

  • Lisez les phrases et préfixes saisis.

  • Divisez les phrases saisies en mots individuels.

  • Pour chaque mot de la phrase, vérifiez s'il commence par le préfixe donné.

  • Si un mot commence par ce préfixe, ajoutez-le à la liste des mots correspondants.

  • Imprimez la liste des mots correspondants.

Exemple

#include <iostream>
#include <string>
#include <vector>

using namespace std;

int main() {
   string sentence, prefix;
   vector<string> words;
   
   // Read in the input sentence and prefix
   sentence="The quick brown fox jumps over the lazy dog";
   prefix="fox";
   
   // Tokenize the input sentence into individual words
   string word = "";
   for (auto c : sentence) {
      if (c == ' ') {
         words.push_back(word);
         word = "";
      }
      else {
         word += c;
      }
   }
   words.push_back(word);

   // Find all words in the sentence that start with the given prefix
   vector<string> matches;
   for (auto w : words) {
      if (w.substr(0, prefix.length()) == prefix) {
         matches.push_back(w);
      }
   }
   
   // Print the list of matching words
   cout << "Matching words:" << endl;
   for (auto m : matches) {
      cout << m << endl;
   }
   
   return 0;
}
Copier après la connexion

Sortie

Matching words:
fox
Copier après la connexion

Exemple de cas de test

Supposons que nous ayons la phrase d'entrée suivante :

The quick brown fox jumps over the lazy dog
Copier après la connexion

Nous voulons trouver tous les mots commençant par le préfixe « renard ». L'exécution de cette entrée à l'aide du code ci-dessus produira le résultat suivant :

Dans cet exemple, le seul mot de la phrase qui commence par le préfixe « renard » est « renard » lui-même, c'est donc le seul mot imprimé comme correspondance.

Conclusion

Dans le traitement du langage naturel et l'analyse de texte, trouver tous les mots commençant par un préfixe donné dans une phrase est une tâche utile. Nous pouvons facilement accomplir cette tâche en utilisant C++ en tokenisant la phrase d'entrée en mots individuels et en vérifiant si chaque mot correspond à un préfixe.

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!

Étiquettes associées:
source:tutorialspoint.com
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal