L’écriture n’est pas une simple tâche pour tout le monde. Il est recommandé de ne pas répéter les mêmes mots et phrases encore et encore. Dans le monde de l’optimisation d’aujourd’hui, vous devez souvent compter, puis limiter la répétition des mots et des phrases. Cet article explique comment compter par programme les mots dans les documents et les occurrences de chaque mot en Java.

API Java pour compter les mots et les occurrences

GroupDocs.Parser présente la solution d’analyse de documents pour les développeurs. J’utiliserai son API Java, c’est-à-dire GroupDocs.Parser for Java pour l’extraction de texte à partir de documents et le comptage des occurrences. L’API permet également l’extraction d’images et de métadonnées pour une grande liste de formats de documents pris en charge tels que des documents de traitement de texte, des présentations, des feuilles de calcul, des e-mails, des bases de données, des livres électroniques et bien d’autres.

Télécharger et configurer

Obtenez la bibliothèque à partir de la section téléchargements. Pour votre application Java basée sur Maven, ajoutez simplement la configuration pom.xml suivante. Après cela, vous pouvez exécuter les exemples de cet article et de nombreux autres exemples disponibles sur GitHub. Pour plus de détails, vous pouvez visiter la API Reference.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>https://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
	<groupId>com.groupdocs</groupId>
	<artifactId>groupdocs-parser</artifactId>
	<version>22.3</version> 
</dependency>

Compter les mots dans le document à l’aide de Java

Tout d’abord, il est important d’analyser et d’extraire avec précision tout le contenu du document avant de compter les mots. Après l’extraction du texte, nous pouvons facilement diviser son contenu en une collection de mots et de phrases. Les étapes suivantes montrent comment compter les mots dans le document à l’aide de Java.

  • Charger le document en utilisant la classe Parser.
  • Récupérez le texte du document chargé à l’aide de TextReader.
  • Divisez le texte en mots à l’aide de délimiteurs.
  • Effectuer le comptage des mots.

Le code source Java suivant compte le nombre de mots dans un document.

// Compter les mots dans un document PDF en utilisant Java
// Compter les mots uniques et leurs occurrences dans un document PDF à l'aide de Java
try (Parser parser = new Parser("path/document.pdf")) {

	TextReader reader = parser.getText();
	String text = reader.readToEnd();

	String[] words = text.split("\\s+|\\.|\\,|\\?|\\:|\\;");
	System.out.println("Length:" + words.length);
}

Compter les occurrences de mots en Java

De même, nous pouvons compter combien de fois un mot ou une phrase particulier ou unique est apparu dans le document. En utilisant cette fonctionnalité, vous pouvez éviter la répétition de n’importe quel mot dans l’article. Les étapes suivantes comptent l’occurrence de chaque mot dans le document à l’aide de Java.

  • Charger le document en utilisant la classe Parser.
  • Récupérez le texte du document chargé à l’aide de TextReader.
  • Lire et diviser l’ensemble du texte en collection de mots.
  • Parcourez la collection de mots pour compter l’apparition de chaque mot.

L’extrait de code Java suivant compte l’occurrence de chaque mot unique dans le document.

// Compter les mots uniques et leurs occurrences dans un document PDF à l'aide de Java
try (Parser parser = new Parser("path/document.pdf")) {

	TextReader reader = parser.getText();
	String text = reader.readToEnd();

	String[] words = text.split("\\s+|\\.|\\,|\\?|\\:|\\;");
	Hashtable<String, Integer> wordCountTable = new Hashtable<String, Integer>();

	int minWordLength = 2;
	for (String word : words) 
	{
		String uniqueWord = word.toLowerCase();
		if (uniqueWord.length() > minWordLength) 
		{
			if (wordCountTable.containsKey(uniqueWord))	{
				wordCountTable.replace(uniqueWord, wordCountTable.get(uniqueWord),
						wordCountTable.get(uniqueWord).intValue() + 1);
			} else {
				wordCountTable.put(uniqueWord, 1);
			}

		}
	}
	wordCountTable.entrySet().forEach(entry -> {
		System.out.println(entry.getKey() + ": " + entry.getValue());
	});
}

Voici la sortie du code ci-dessus :

lorem: 6
ipsum: 2
eleifend: 2
integer: 1
augue: 3
aliquet: 1
ligula: 1
dolor: 1
venenatis: 2
viverra: 1
amet: 2
urna: 1
senectus: 2
lectus: 2
volutpat: 1
massa: 1
blandit: 1
dapibus: 1
habitant: 2
pharetra: 2
...

Obtenez une licence API gratuite

Vous pouvez obtenir une licence temporaire gratuite afin d’utiliser l’API sans les limitations d’évaluation.

Conclusion

Pour conclure, vous avez appris à compter les mots dans un document en utilisant Java. De plus, nous avons discuté de la manière d’obtenir le nombre d’occurrences de mots pour chaque mot utilisé dans le document. Essayez de développer votre application Java de compteur de mots en ligne. Pour plus de détails et en savoir plus sur l’API, consultez la documentation. Pour toute question, contactez-nous via le forum.

Voir également