寫作對每個人來說都不僅僅是一項簡單的任務。建議不要一次又一次地重複相同的單詞和短語。在當今的優化世界中,您經常需要計算然後限制單詞和短語的重複。本文討論如何以編程方式計算文檔中的單詞數以及每個單詞在 Java 中出現的次數。
用於計算單詞和出現次數的 Java API
GroupDocs.Parser 展示了面向開發人員的文檔解析解決方案。我將使用它的 Java API,即 GroupDocs.Parser for Java 從文檔中提取文本,併計算出現次數。 API 還允許為大量支持的文檔格式 提取圖像和元數據,例如文字處理文檔、演示文稿、電子表格、電子郵件、數據庫、電子書等。
下載和配置
從 下載部分 獲取庫。對於基於 Maven 的 Java 應用程序,只需添加以下 pom.xml 配置。在此之後,您可以運行本文的示例,以及 GitHub 上提供的更多示例。有關詳細信息,您可以訪問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>
使用 Java 計算文檔中的單詞數
首先,重要的是在統計單詞之前準確地解析和提取文檔的全部內容。文本提取後,我們可以很容易地將其內容拆分為單詞和短語的集合。以下步驟顯示如何使用 Java 計算文檔中的字數。
- 使用 Parser 類加載文檔。
- 使用 TextReader 獲取加載文檔的文本。
- 使用定界符將文本拆分為單詞。
- 進行字數統計。
以下 Java 源代碼計算文檔中的單詞數。
// 使用 Java 統計 PDF 文檔中的字數
// 使用 Java 計算 PDF 文檔中的唯一單詞及其出現次數
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);
}
計算 Java 中的單詞出現次數
同樣,我們可以計算文檔中出現的特定或任何唯一單詞或短語的次數。通過使用此功能,您可以避免文章中任何單詞的重複。以下步驟使用 Java 計算文檔中每個單詞的出現次數。
- 使用 Parser 類加載文檔。
- 使用 TextReader 檢索加載文檔的文本。
- 閱讀全文並將其拆分為單詞集。
- 遍歷單詞集合以計算每個單詞的出現次數。
以下 Java 代碼片段計算文檔中每個唯一單詞的出現次數。
// 使用 Java 計算 PDF 文檔中的唯一單詞及其出現次數
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());
});
}
以下是上述代碼的輸出:
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
...
獲取免費的 API 許可證
您可以獲得免費的臨時許可證,以便在不受評估限制的情況下使用 API。
結論
總而言之,您學習瞭如何使用 Java 計算文檔中的字數。此外,我們還討論瞭如何獲取文檔中使用的每個詞的詞出現次數。嘗試開發在線單詞計數器 Java 應用程序。有關 API 的更多詳細信息和學習,請訪問 文檔。如有疑問,請通過論壇 聯繫我們。