ค้นหาและไฮไลท์ข้อความในเอกสารด้วย GroupDocs.Search สำหรับ Java
ในยุคดิจิทัลปัจจุบัน การ ค้นหาและไฮไลท์ข้อความ ในคอลเลกชันเอกสารขนาดใหญ่เป็นความต้องการทั่วไป ไม่ว่าคุณจะกำลังสร้างเครื่องมือรีวิวกฎหมาย, พอร์ทัลการวิจัยทางวิชาการ, หรือแดชบอร์ดสนับสนุนลูกค้า การสามารถค้นหาและเน้นคำสำคัญได้ทันทีช่วยปรับปรุงการใช้งานอย่างมาก ในคู่มือฉบับครอบคลุมนี้ คุณจะได้เรียนรู้วิธีการทำ ค้นหาและไฮไลท์ข้อความ ด้วย GroupDocs.Search สำหรับ Java—ครอบคลุมทั้งการไฮไลท์เอกสารทั้งหมดและการไฮไลท์ระดับส่วนย่อยเพื่อให้ได้บริบทที่เน้น
คำตอบอย่างรวดเร็ว
- อะไรคือความหมายของ “search and highlight text”? หมายถึงการค้นหาคำค้นในเอกสารและทำให้เห็นชัดเจนด้วยการเน้นสี (เช่น การใช้สีพื้นหลัง).
- ไลบรารีใดที่ให้ความสามารถนี้? GroupDocs.Search for Java.
- ฉันต้องการไลเซนส์หรือไม่? การทดลองใช้ฟรีทำงานสำหรับการประเมิน; จำเป็นต้องมีไลเซนส์เต็มสำหรับการใช้งานจริง.
- ฉันสามารถปรับสีไฮไลท์ได้หรือไม่? ได้—สามารถตั้งค่าสี RGB ใดก็ได้ผ่าน
HighlightOptions. - การไฮไลท์ส่วนย่อยได้รับการสนับสนุนหรือไม่? แน่นอน; คุณสามารถกำหนดคำก่อน/หลังการจับคู่เพื่อสร้างสแนปช็อตสั้น ๆ.
การค้นหาและไฮไลท์ข้อความคืออะไร?
การค้นหาและไฮไลท์ข้อความเป็นกระบวนการสแกนดัชนีเอกสารตามคำค้นที่กำหนด, ดึงเอกสารที่ตรงกัน, แล้วทำเครื่องหมายแต่ละตำแหน่งของคำค้นภายในผลลัพธ์เอกสาร (HTML, PDF, ฯลฯ). สัญญาณภาพนี้ช่วยให้ผู้ใช้ปลายทางพบข้อมูลที่เกี่ยวข้องได้ทันที.
ทำไมต้องใช้ GroupDocs.Search สำหรับ Java?
- การทำดัชนีที่มีประสิทธิภาพสูง พร้อมการบีบอัดที่กำหนดค่าได้.
- API การไฮไลท์ที่หลากหลาย ทำงานบนเอกสารทั้งหมดและส่วนย่อยที่กำหนดเอง.
- การสนับสนุนหลายรูปแบบ (DOCX, PDF, PPTX, TXT, และอื่น ๆ).
- การผสานรวม Maven อย่างง่าย และ API ที่ชัดเจนสำหรับ Java.
ข้อกำหนดเบื้องต้น
- Java Development Kit (JDK) 8 หรือใหม่กว่า.
- Maven สำหรับการจัดการ dependencies.
- IDE เช่น IntelliJ IDEA หรือ Eclipse.
- ความคุ้นเคยพื้นฐานกับไวยากรณ์ Java.
การตั้งค่า GroupDocs.Search สำหรับ Java
เพิ่มรีโพสิตอรีของ GroupDocs และ dependency ลงในไฟล์ pom.xml ของคุณ:
<repositories>
<repository>
<id>repository.groupdocs.com</id>
<name>GroupDocs Repository</name>
<url>https://releases.groupdocs.com/search/java/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-search</artifactId>
<version>25.4</version>
</dependency>
</dependencies>
คุณยังสามารถดาวน์โหลด JAR ล่าสุดโดยตรงจากเว็บไซต์อย่างเป็นทางการ: การปล่อย GroupDocs.Search สำหรับ Java.
การรับไลเซนส์
เริ่มต้นด้วยการทดลองใช้ฟรีหรือรับไลเซนส์ชั่วคราวสำหรับการประเมิน. สำหรับการใช้งานในสภาพแวดล้อมการผลิต, ซื้อไลเซนส์เต็มเพื่อเปิดใช้งานคุณสมบัติทั้งหมด.
คู่มือการใช้งาน
การนำไปใช้จะแบ่งเป็นสองส่วนปฏิบัติ: การไฮไลท์ในเอกสารทั้งหมด และ การไฮไลท์ในส่วนย่อย. ทั้งสองส่วนรวมขั้นตอนสำคัญสำหรับ วิธีการไฮไลท์เอกสาร Java ด้วย GroupDocs.Search.
การกำหนดค่าการตั้งค่าดัชนี
ก่อนทำการทำดัชนี, กำหนดค่าที่เก็บข้อมูลให้ใช้การบีบอัดสูง—ซึ่งช่วยลดการใช้ดิสก์ขณะยังคงความเร็วในการค้นหา.
IndexSettings settings = new IndexSettings();
settings.setTextStorageSettings(new TextStorageSettings(Compression.High));
การไฮไลท์ในเอกสารทั้งหมด
ขั้นตอน 1: สร้างและเติมข้อมูลดัชนี
สร้างโฟลเดอร์ดัชนีและเพิ่มไฟล์ต้นฉบับทั้งหมดที่คุณต้องการค้นหา.
String indexFolder = "/path/to/your/document/directory/HighlightingInEntireDocument";
Index index = new Index(indexFolder, settings);
index.add("/path/to/your/documents");
ขั้นตอน 2: ทำการค้นหาและใช้การไฮไลท์
ค้นหาคำ (เช่น ipsum) และสร้างไฟล์ HTML ที่มีการไฮไลท์ผลลัพธ์ที่ตรงกัน.
SearchResult result = index.search("ipsum");
if (result.getDocumentCount() > 0) {
FoundDocument document = result.getFoundDocument(0);
OutputAdapter outputAdapter = new FileOutputAdapter(OutputFormat.Html, "/path/to/your/output/directory/Highlighted.html");
Highlighter highlighter = new DocumentHighlighter(outputAdapter);
HighlightOptions options = new HighlightOptions();
options.setHighlightColor(new Color(150, 255, 150)); // Custom green shade
options.setUseInlineStyles(false); // Prefer CSS for styling
index.highlight(document, highlighter, options);
}
อธิบายตัวเลือกสำคัญ
- Compression – การบีบอัดสูงช่วยประหยัดพื้นที่จัดเก็บ.
- HighlightColor – ตั้งค่าสี RGB ใดก็ได้ให้ตรงกับพาเลต UI ของคุณ.
- UseInlineStyles –
falseจะสร้าง HTML ที่สะอาดและสามารถสไตล์ด้วย CSS อย่างทั่วโลก.
การไฮไลท์ในส่วนย่อย
ขั้นตอน 1: ทำดัชนีและค้นหา (เช่นเดียวกับข้างบน)
String indexFolder = "/path/to/your/document/directory/HighlightingInFragments";
Index index = new Index(indexFolder, settings);
index.add("/path/to/your/documents");
SearchResult result = index.search("ipsum");
ขั้นตอน 2: กำหนดบริบทของส่วนย่อยและทำการไฮไลท์
ระบุจำนวนคำก่อนและหลังการจับคู่ที่ควรปรากฏในแต่ละส่วนย่อย.
HighlightOptions options = new HighlightOptions();
options.setTermsBefore(5); // Include 5 terms before the match
options.setTermsAfter(5); // Include 5 terms after the match
options.setHighlightColor(new Color(127, 200, 255)); // Custom blue shade
options.setUseInlineStyles(true); // Use inline styles for emphasis
FoundDocument document = result.getFoundDocument(0);
FragmentHighlighter highlighter = new FragmentHighlighter(OutputFormat.Html);
index.highlight(document, highlighter, options);
ขั้นตอน 3: ดึงและเขียนส่วนย่อยที่ไฮไลท์
รวบรวมส่วนย่อยที่สร้างขึ้นและเขียนลงไฟล์ HTML.
StringBuilder stringBuilder = new StringBuilder();
FragmentContainer[] fragmentContainers = highlighter.getResult();
for (FragmentContainer container : fragmentContainers) {
String[] fragments = container.getFragments();
if (fragments.length > 0) {
stringBuilder.append("\n<br>").append(container.getFieldName()).append("<br>\n");
for (String fragment : fragments) {
stringBuilder.append(fragment).append("\n");
}
}
}
try {
Files.write(Paths.get("/path/to/your/output/directory/Fragments.html"), stringBuilder.toString().getBytes());
} catch (IOException ex) {
// Handle exceptions
}
การประยุกต์ใช้งานจริง
- การตรวจสอบเอกสารทางกฎหมาย – ไฮไลท์กฎหมาย, ข้อความ, หรือการอ้างอิงคดีโดยทันที.
- การวิจัยทางวิชาการ – แสดงคำศัพท์สำคัญในหลายสิบไฟล์ PDF และ Word.
- การสนับสนุนลูกค้า – ระบุตัวเลขคำสั่งซื้อหรือรหัสข้อผิดพลาดในประวัติตั๋ว.
การพิจารณาประสิทธิภาพ
- ขนาดดัชนี – การบีบอัดสูง (
Compression.High) ลดพื้นที่ดิสก์. - บริบทของส่วนย่อย – ค่า
termsBefore/Afterที่ใหญ่ขึ้นเพิ่มความแม่นยำแต่อาจส่งผลต่อความเร็ว. - การจัดการหน่วยความจำ – ตรวจสอบ heap ของ JVM เมื่อทำดัชนีข้อมูลจำนวนมาก; พิจารณาการทำดัชนีแบบเพิ่มขั้นสำหรับชุดข้อมูลขนาดใหญ่มาก.
ปัญหาทั่วไปและวิธีแก้
- ข้อผิดพลาดการทำดัชนี – ตรวจสอบเส้นทางไฟล์และให้แน่ใจว่าแอปพลิเคชันมีสิทธิ์อ่าน/เขียน.
- ไม่มีการไฮไลท์แสดง – ยืนยันว่า
UseInlineStylesตรงกับรูปแบบผลลัพธ์ของคุณ (HTML vs. PDF). - สีไม่ถูกนำไปใช้ – ตรวจสอบว่าค่า RGB อยู่ในช่วง 0‑255 และตัวดู HTML รองรับสไตล์นั้น.
คำถามที่พบบ่อย
Q: ประโยชน์ของการใช้ GroupDocs.Search สำหรับ Java คืออะไร?
A: มันให้การทำดัชนีที่เร็วและขยายได้, การไฮไลท์ที่ปรับแต่งได้, และการสนับสนุนหลายรูปแบบเอกสาร.
Q: ฉันจะรวม GroupDocs.Search กับ REST API อย่างไร?
A: เปิดเผยเมธอดการค้นหาและไฮไลท์ผ่านคอนโทรลเลอร์ Spring Boot, ส่งคืน HTML หรือ JSON payloads.
Q: ไลบรารีนี้รองรับไฟล์ที่มีการป้องกันด้วยรหัสผ่านหรือไม่?
A: ใช่—ให้รหัสผ่านเมื่อเพิ่มเอกสารลงในดัชนี.
Q: ฉันสามารถปรับแต่ง markup ของการไฮไลท์นอกเหนือจากสีได้หรือไม่?
A: แน่นอน; คุณสามารถแทรกคลาส CSS ผ่าน HighlightOptions หรือแก้ไข HTML หลังการสร้าง.
Q: เวอร์ชันที่ทดสอบสำหรับคู่มือนี้คืออะไร?
A: โค้ดได้รับการตรวจสอบกับ GroupDocs.Search 25.4.
อัปเดตล่าสุด: 2025-12-26
ทดสอบด้วย: GroupDocs.Search 25.4
ผู้เขียน: GroupDocs