Tìm và thay thế trong Word

Trong bài đăng blog hôm nay, chúng ta sẽ khám phá cách tìm và thay thế văn bản trong tài liệu Word (DOC/DOCX) bằng Java. Chúng tôi sẽ đề cập đến nhiều khía cạnh khác nhau của nhiệm vụ này, bao gồm làm việc với API biên tập văn bản Java Word, tìm và thay thế các từ hoặc cụm từ, tìm kiếm phân biệt chữ hoa chữ thường và thậm chí thay thế văn bản bằng cách sử dụng biểu thức thông thường (RegEx) để thay thế nâng cao.

Các điểm sau đây sẽ được đề cập trong bài viết này:

Thư viện soạn thảo văn bản Java Word - Cài đặt

Để bắt đầu, chúng ta cần thiết lập thư viện Conholdate.Total for Java. Quy trình cài đặt thư viện Java này rất đơn giản. Người dùng Maven có thể chỉ cần thêm các cấu hình sau vào tệp pom.xml.

<repository>
	<id>ConholdateJavaAPI</id>
	<name>Conholdate Java API</name>
	<url>https://releases.conholdate.com/java/repo</url>
</repository>        
<dependency>
	<groupId>com.conholdate</groupId>
	<artifactId>conholdate-total</artifactId>
	<version>23.6</version>
	<type>pom</type>
</dependency>

Sau đó chạy các lệnh sau.

mvn clean    
mvn install -U

Để định cấu hình các khung công tác Java khác, vui lòng truy cập releases.conholdate.com.

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

Bạn có thể tải xuống giấy phép tạm thời miễn phí để kiểm tra thư viện mà không bị giới hạn đánh giá.

Đặt một câu hỏi

Bạn có thể đăng câu hỏi hoặc nhận xét của mình về thư viện xóa trang Java PDF trong diễn đàn này.

Sử dụng Thư viện soạn thảo văn bản Java Word

Hãy tạm biệt những rắc rối khi phải dựa vào MS Word để soạn thảo văn bản. Với Java, chúng ta có thể tự mình xử lý tất cả, không cần đến phần mềm bên ngoài. Chúng ta sẽ khám phá nhiều cách tiếp cận khác nhau để giải quyết vấn đề tìm và thay thế văn bản trong tài liệu Word bằng Java. Chúng ta sẽ tận dụng sức mạnh của Java để thực hiện các hoạt động tìm kiếm và thay thế hiệu quả. Bạn sẽ ngạc nhiên về việc bạn có thể xử lý các sửa đổi văn bản theo chương trình dễ dàng như thế nào bằng ngôn ngữ lập trình linh hoạt này.

Chúng tôi sẽ sử dụng tài liệu Word mẫu như trong ảnh chụp màn hình sau:

Xóa một trang khỏi pdf

Tìm kiếm và thay thế từ hoặc cụm từ: Các bước viết chương trình Java

Sau đây là các bước giải thích cách tìm và sau đó thay thế bất kỳ trường hợp nào của từ/cụm từ trong tài liệu Word.

  1. Đầu tiên, tải tệp DOC/DOCX bằng lớp Redactor.
  2. Sau đó, tìm cụm từ hoặc từ mục tiêu bằng cách sử dụng các lớp ExactPhraseRedactionReplacementOptions.
  3. Tiếp theo, áp dụng tính năng chỉnh sửa bằng phương thức áp dụng của Redactor.
  4. Sau đó, lưu tệp đã sửa đổi vào một vị trí khác bằng luồng đầu ra.
  5. Cuối cùng, lưu các thay đổi biên tập bằng phương thức save.

Đoạn mã Java sau đây tìm từ “John Doe" trong tài liệu Word ở trên và thay thế tất cả các phiên bản của “John Doe" bằng từ “[censored]".

// Tìm cụm từ chính xác và thay thế nó bằng một số văn bản khác bằng Java
final Redactor redactor  = new Redactor("path/document.docx");
redactor.apply(new ExactPhraseRedaction("John Doe", new ReplacementOptions("[censored]")));
// Nếu bạn muốn lưu tệp đã được xử lý lại ở vị trí khác với tên khác.
FileOutputStream stream = new FileOutputStream("path/exactPhrase.docx");
RasterizationOptions rasterOptions = new RasterizationOptions();
rasterOptions.setEnabled(false);
redactor.save(stream, rasterOptions);

Đầu ra của mã như sau.

Tìm kiếm và thay thế từ

Tìm và thay thế văn bản phân biệt chữ hoa chữ thường

Cách viết hoa chữ cái chính xác của từ này có vẻ quan trọng đối với bạn và bạn chỉ muốn thay thế nó bằng những từ phù hợp với tìm kiếm phân biệt chữ hoa chữ thường của bạn. Đoạn mã sau thay thế các lần xuất hiện khớp kiểu chữ chính xác của từ “John Doe" trong Java.

// Tìm cụm từ chính xác (phân biệt chữ hoa chữ thường) và thay thế nó bằng một số văn bản khác bằng Java
final Redactor redactor  = new Redactor("path/document.docx");
redactor.apply(new ExactPhraseRedaction("John Doe", true /*isCaseSensitive*/, new ReplacementOptions("[censored]")));
redactor.save();

Đầu ra của mã như sau.

Tìm và thay thế văn bản phân biệt chữ hoa chữ thường

Tìm và thay thế bằng biểu thức chính quy (RegEx) trong Java

Nếu bạn muốn cập nhật một mẫu bên trong tài liệu của mình thay vì một từ cụ thể. Bạn có thể sử dụng biểu thức chính quy (RegEx) trong các chương trình Java để tìm và thay thế bất kỳ mẫu văn bản nào bằng cách thực hiện theo các bước bên dưới.

  1. Tải tài liệu với lớp Redactor.
  2. Tạo mẫu RegEx bằng RegexRedaction.
  3. Chỉ định văn bản thay thế bằng Tùy chọn thay thế.
  4. Áp dụng việc chỉnh sửa bằng phương pháp áp dụng.
  5. Lưu tài liệu đã được xử lý lại bằng phương thức save.

Mã Java sau đây cho thấy cách thực hiện tìm kiếm từ trong tài liệu MS Word bằng RegEx và thay thế nó bằng một số văn bản khác.

// Tìm văn bản sử dụng biểu thức chính quy và thay thế nó bằng một số văn bản khác bằng Java
final Redactor redactor  = new Redactor("path/document.docx");
redactor.apply(new RegexRedaction("\\d{2}\\s*\\d{2}[^\\d]*\\d{6}", new ReplacementOptions("[censored]")));
redactor.save();

Đầu ra của mã như sau.

tìm và thay thế bằng biểu thức chính quy

Phần kết luận

Đến cuối bài đăng trên blog này, bạn sẽ hiểu toàn diện về cách tìm và thay thế văn bản trong tài liệu Word bằng Java bằng thư viện Conholdate.Total cho Java. Bạn sẽ được trang bị kiến thức và công cụ để tự động hóa nhiệm vụ này một cách hiệu quả, cải thiện năng suất và đơn giản hóa quy trình xử lý tài liệu. Vì vậy, hãy bắt đầu và tận dụng sức mạnh của Conholdate.Total dành cho Java để cải thiện khả năng xử lý tài liệu Word dựa trên Java của bạn!

Cuối cùng, vui lòng tiếp tục truy cập conholdate.com để cập nhật thường xuyên.

Xem thêm