Viết lách không chỉ là công việc đơn giản dành cho tất cả mọi người. Không nên lặp đi lặp lại cùng một từ và cụm từ nhiều lần. Trong thế giới tối ưu hóa ngày nay, bạn thường cần đếm và sau đó giới hạn việc lặp lại các từ và cụm từ. Bài viết này thảo luận về cách lập trình đếm từ trong tài liệu và số lần xuất hiện của từng từ trong Java.

API Java để đếm từ & lần xuất hiện

GroupDocs.Parser giới thiệu giải pháp phân tích cú pháp tài liệu dành cho nhà phát triển. Tôi sẽ sử dụng API Java của nó, tức là GroupDocs.Parser for Java để trích xuất văn bản từ tài liệu và đếm số lần xuất hiện. API cũng cho phép trích xuất hình ảnh và siêu dữ liệu cho một danh sách lớn các định dạng tài liệu được hỗ trợ như tài liệu soạn thảo văn bản, bản trình bày, bảng tính, email, cơ sở dữ liệu, sách điện tử, v.v.

Tải xuống và định cấu hình

Tải thư viện từ phần tải xuống. Đối với ứng dụng Java dựa trên Maven của bạn, chỉ cần thêm cấu hình pom.xml sau. Sau đó, bạn có thể chạy các ví dụ của bài viết này và nhiều ví dụ khác có sẵn trên GitHub. Để biết chi tiết, bạn có thể truy cập Tham khảo 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>

Đếm từ trong tài liệu bằng Java

Đầu tiên, điều quan trọng là phải phân tích chính xác và trích xuất toàn bộ nội dung của tài liệu trước khi đếm từ. Sau khi trích xuất văn bản, chúng ta có thể dễ dàng chia nội dung của nó thành một tập hợp các từ và cụm từ. Các bước sau đây cho thấy cách đếm số từ trong tài liệu bằng Java.

  • Tải tài liệu bằng lớp Parser.
  • Tìm nạp văn bản của tài liệu đã tải bằng TextReader.
  • Tách văn bản thành các từ bằng cách sử dụng dấu phân cách.
  • Thực hiện đếm từ.

Mã nguồn Java sau đây đếm số từ trong tài liệu.

// Đếm số từ trong tài liệu PDF bằng Java
// Đếm các từ duy nhất và số lần xuất hiện của chúng trong tài liệu PDF bằng 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);
}

Đếm số lần xuất hiện trong Java

Tương tự như vậy, chúng ta có thể đếm số lần một từ hoặc một cụm từ cụ thể hoặc bất kỳ duy nhất nào xuất hiện trong tài liệu. Bằng cách sử dụng tính năng này, bạn có thể tránh lặp lại bất kỳ từ nào trong bài viết. Các bước sau đếm số lần xuất hiện của từng từ trong tài liệu bằng Java.

  • Tải tài liệu bằng lớp Parser.
  • Truy xuất văn bản của tài liệu đã tải bằng TextReader.
  • Đọc và chia toàn bộ văn bản thành bộ sưu tập từ.
  • Duyệt qua bộ sưu tập từ để đếm sự xuất hiện của từng từ.

Đoạn mã Java sau đếm số lần xuất hiện của mỗi từ duy nhất trong tài liệu.

// Đếm các từ duy nhất và số lần xuất hiện của chúng trong tài liệu PDF bằng 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());
	});
}

Sau đây là đầu ra của đoạn mã trên:

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

Nhận giấy phép API miễn phí

Bạn có thể nhận giấy phép tạm thời miễn phí để sử dụng API mà không bị giới hạn đánh giá.

Sự kết luận

Để kết luận, bạn đã học cách đếm từ trong tài liệu bằng Java. Ngoài ra, chúng tôi đã thảo luận về cách chúng tôi có thể nhận được số lần xuất hiện của từ cho mỗi từ được sử dụng trong tài liệu. Hãy thử phát triển ứng dụng Java bộ đếm từ trực tuyến của bạn. Để biết thêm chi tiết và tìm hiểu về API, hãy truy cập tài liệu. Đối với các truy vấn, liên hệ với chúng tôi qua diễn đàn.

Xem thêm