Psaní není jen jednoduchý úkol pro každého. Doporučuje se neopakovat stále stejná slova a fráze. V dnešním světě optimalizace je často potřeba počítat a následně omezit opakování slovíček a frází. Tento článek popisuje, jak programově počítat slova v dokumentech a výskyty každého slova v Java.
Java API pro počítání slov a výskytů
GroupDocs.Parser představuje řešení analýzy dokumentů pro vývojáře. K extrakci textu z dokumentů a počítání výskytů použiji jeho Java API, tj. GroupDocs.Parser for Java. API také umožňuje extrakci obrázků a metadat pro velký seznam podporovaných formátů dokumentů, jako jsou dokumenty pro zpracování textu, prezentace, tabulky, e-maily, databáze, elektronické knihy a mnoho dalších.
Stáhnout a nakonfigurovat
Získejte knihovnu z sekce ke stažení. Pro vaši Java aplikaci založenou na Maven stačí přidat následující konfiguraci pom.xml. Poté můžete spustit příklady z tohoto článku a mnoho dalších příkladů dostupných na GitHub. Podrobnosti naleznete v Odkaz na rozhraní API.
<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>
Počítání slov v dokumentu pomocí Java
Za prvé, je důležité přesně analyzovat a extrahovat celý obsah dokumentu před počítáním slov. Po extrakci textu můžeme jeho obsah snadno rozdělit na sbírku slov a frází. Následující kroky ukazují, jak počítat slova v dokumentu pomocí Java.
- Načtěte dokument pomocí třídy Parser.
- Načtěte text načteného dokumentu pomocí TextReader.
- Rozdělte text na slova pomocí oddělovačů.
- Proveďte počítání slov.
Následující zdrojový kód Java počítá počet slov v dokumentu.
// Počítejte slova v dokumentu PDF pomocí Java
// Počítejte jedinečná slova a jejich výskyty v dokumentu PDF pomocí 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);
}
Počítejte výskyty slov v Java
Stejně tak můžeme spočítat, kolikrát se v dokumentu objevilo určité nebo jakékoli jedinečné slovo nebo fráze. Pomocí této funkce se můžete vyhnout opakování jakéhokoli slova v článku. Následující kroky počítají výskyt každého slova v dokumentu pomocí Java.
- Načtěte dokument pomocí třídy Parser.
- Načtěte text načteného dokumentu pomocí TextReader.
- Přečtěte si a rozdělte celý text do kolekce slov.
- Procházejte sbírku slov a spočítejte výskyt jednotlivých slov.
Následující fragment kódu Java počítá výskyt každého jedinečného slova v dokumentu.
// Počítejte jedinečná slova a jejich výskyty v dokumentu PDF pomocí 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());
	});
}
Následuje výstup výše uvedeného kódu:
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
...
Získejte bezplatnou licenci API
Můžete získat bezplatnou dočasnou licenci, abyste mohli používat API bez omezení hodnocení.
Závěr
Na závěr jste se naučili počítat slova v dokumentu pomocí Javy. Kromě toho jsme diskutovali o tom, jak můžeme získat počet výskytů slov pro každé slovo použité v dokumentu. Zkuste vyvinout online aplikaci Java pro počítadlo slov. Další podrobnosti a informace o rozhraní API naleznete v dokumentaci. V případě dotazů nás kontaktujte prostřednictvím fóra.