ในโลกดิจิทัลยุคใหม่ ความสามารถในการค้นหาเอกสารจำนวนมากได้อย่างรวดเร็วและแม่นยำถือเป็นสิ่งจำเป็นสำหรับแอปพลิเคชันต่างๆ อย่างไรก็ตาม อัลกอริทึมการค้นหาแบบจับคู่ที่แน่นอนแบบดั้งเดิมมักจะล้มเหลวเมื่อผู้ใช้พิมพ์ผิด ใช้การสะกดแบบอื่น หรือป้อนข้อมูลไม่ครบถ้วน ซึ่งนี่คือจุดที่การค้นหาแบบฟัซซีพิสูจน์ได้ว่ามีค่าอย่างยิ่ง การค้นหาแบบฟัซซีช่วยให้จับคู่ได้โดยประมาณ ช่วยให้ผู้ใช้ค้นหาผลลัพธ์ที่เกี่ยวข้องได้ แม้ว่าเงื่อนไขการค้นหาและเนื้อหาจะไม่ตรงกันอย่างสมบูรณ์แบบ ด้วย Java ขณะนี้ นักพัฒนาสามารถค้นหาแบบฟัซซีโดยใช้ Java โดยใช้ประโยชน์จากคุณลักษณะขั้นสูงเพื่อปรับปรุงความแม่นยำในการค้นหา ไม่ว่าคุณต้องการสร้างการค้นหาเอกสารด้วยลอจิกแบบฟัซซี สำหรับระบบการจัดการเอกสารที่มีประสิทธิภาพหรือพัฒนาเครื่องมือค้นหาพื้นฐาน บทความนี้จะให้คำแนะนำที่ครอบคลุม
ขั้นตอนในการค้นหาแบบฟัซซี่โดยใช้ Java
- ตั้งค่าสภาพแวดล้อมการพัฒนาของคุณโดยการรวมไลบรารี GroupDocs.Search for Java ซึ่งจะทำให้สามารถใช้งานฟังก์ชันการค้นหาแบบคลุมเครือได้
- เริ่มต้นวัตถุ Index เพื่อกำหนดตำแหน่งจัดเก็บสำหรับการจัดระเบียบและเตรียมเอกสารของคุณสำหรับการค้นหาที่มีประสิทธิภาพ
- เพิ่มไฟล์ลงในดัชนีโดยใช้เมธอด Index.add โดยระบุเส้นทางโฟลเดอร์ที่ประกอบด้วยเอกสารที่ต้องการสร้างดัชนี
- เปิดใช้งานการค้นหาแบบคลุมเครือโดยตั้งค่าคุณสมบัติ FuzzySearch.Enabled ในตัวเลือกการค้นหาเพื่อให้สามารถจับคู่โดยประมาณในแบบสอบถามของคุณได้
- กำหนดค่าอัลกอริทึมการค้นหาแบบฟัซซีโดยระบุระดับความคล้ายคลึงด้วยคุณสมบัติ FuzzySearch.FuzzyAlgorithm ระดับนี้จะกำหนดจำนวนข้อผิดพลาดที่อนุญาตตามความยาวของคำ (เช่น ข้อผิดพลาดสูงสุด 2 ข้อสำหรับคำที่มีความยาว 10-14 อักขระ)
- ดำเนินการค้นหาในดัชนีโดยใช้ Index.search ด้วยแบบสอบถามที่ต้องการและ SearchOptions ที่กำหนดค่าไว้เพื่อรับผลลัพธ์ที่เกี่ยวข้อง
การค้นหาแบบฟัซซีใน GroupDocs.Search ช่วยให้สามารถจับคู่ระหว่างแบบสอบถามการค้นหากับเนื้อหาที่สร้างดัชนีได้โดยประมาณ ซึ่งทำได้โดยใช้ อัลกอริทึมการค้นหาแบบฟัซซีใน Java ที่มีค่าเกณฑ์ความคล้ายคลึง เช่น 0.8
ซึ่งอนุญาตให้เกิดความไม่ตรงกันได้มากถึง 20% และอัลกอริทึมแบบฟัซซีที่ปรับค่าข้อผิดพลาดที่อนุญาตได้ตามความยาวของคำ ในการใช้งาน ขั้นแรก ให้ตั้งค่าสภาพแวดล้อมการพัฒนาของคุณและเพิ่มไลบรารีที่จำเป็นลงในโปรเจ็กต์ของคุณ สร้างดัชนีเพื่อเก็บเอกสารของคุณ จากนั้นจึงเพิ่มไฟล์ที่คุณต้องการค้นหา เปิดใช้งานการค้นหาแบบฟัซซีในตัวเลือกการค้นหาโดยตั้งค่าคุณสมบัติ FuzzySearch.Enabled
เป็น true
และกำหนดค่าเกณฑ์ความคล้ายคลึงโดยใช้คุณสมบัติ FuzzyAlgorithm
เพื่อกำหนดระดับความไม่ตรงกันที่ยอมรับได้ สุดท้าย ให้เรียกใช้แบบสอบถามการค้นหาด้วยการตั้งค่าเหล่านี้ และไลบรารีจะส่งคืนผลลัพธ์ตามค่าที่ตรงกันโดยประมาณ ช่วยให้คุณสามารถจัดการกับความคลาดเคลื่อนหรือการเปลี่ยนแปลงในเงื่อนไขการค้นหาได้
โค้ดสำหรับดำเนินการค้นหาแบบฟัซซี่โดยใช้ Java
import com.groupdocs.search.Index; | |
import com.groupdocs.search.licenses.License; | |
import com.groupdocs.search.options.SearchOptions; | |
import com.groupdocs.search.options.SimilarityLevel; | |
import com.groupdocs.search.results.SearchResult; | |
public class PerformFuzzySearchusingJava { | |
public static void main(String[] args) throws Exception { | |
// Apply the license to remove the restrictions | |
// imposed by the Search library | |
License license = new License(); | |
license.setLicense("GroupDocs.Search.lic"); | |
// The path where the index will be stored | |
String indexFolder = "c:\\MyIndex\\"; | |
// The folder containing the documents you want to search | |
String documentsFolder = "c:\\MyDocuments\\"; | |
String query = "Einstein"; | |
// Creating an index in the specified folder | |
Index index = new Index(indexFolder); | |
// Indexing documents from the specified folder | |
index.add(documentsFolder); | |
SearchOptions options = new SearchOptions(); | |
// Enabling the fuzzy search | |
options.getFuzzySearch().setEnabled(true); | |
// Creating the fuzzy search algorithm | |
options.getFuzzySearch().setFuzzyAlgorithm(new SimilarityLevel(0.8)); | |
// This function specifies 0 as the maximum number of mistakes | |
// for words from 1 to 4 characters. | |
// It specifies 1 as the maximum number of mistakes for | |
// words from 5 to 9 characters. | |
// It specifies 2 as the maximum number of mistakes for words | |
// from 10 to 14 characters. And so on. | |
// Search in index | |
SearchResult result = index.search(query, options); | |
} | |
} |
โดยสรุป การรวมการค้นหาแบบฟัซซีใน Java เข้ากับไลบรารี Search ถือเป็นวิธีการที่เรียบง่ายแต่ทรงพลังในการปรับปรุงฟังก์ชันการค้นหาของแอปพลิเคชันของคุณ บทช่วยสอนการค้นหาแบบฟัซซีสำหรับนักพัฒนา Java นี้จะแสดงวิธีการจัดการการจับคู่โดยประมาณด้วยการตั้งค่าที่ปรับได้ เพื่อให้แน่ใจว่าผู้ใช้สามารถเข้าถึงผลลัพธ์ที่เกี่ยวข้องได้แม้จะมีการค้นหาที่มีข้อบกพร่อง การออกแบบไลบรารี Search ที่ไม่ขึ้นอยู่กับแพลตฟอร์มทำให้เป็นโซลูชันที่ยืดหยุ่น ช่วยให้นักพัฒนาสามารถสร้างคุณลักษณะการค้นหาที่มีประสิทธิภาพในสภาพแวดล้อมที่แตกต่างกัน ไม่ว่าคุณจะกำลังสร้างระบบจัดการเอกสาร เครื่องมือค้นหา หรือแอปพลิเคชันใดๆ ที่ต้องการความสามารถในการค้นหาขั้นสูง แอปพลิเคชันเหล่านี้ก็มีเครื่องมือที่จำเป็นเพื่อมอบประสบการณ์ที่คล่องตัวและเป็นมิตรต่อผู้ใช้
ก่อนหน้านี้ เราได้เผยแพร่คู่มือที่ครอบคลุมเกี่ยวกับการใช้งานการค้นหาแบบแยกส่วนใน Java หากต้องการคำแนะนำแบบทีละขั้นตอนฉบับสมบูรณ์ โปรดอ่านบทความโดยละเอียดของเราใน วิธีการดำเนินการค้นหาแบบแยกส่วนโดยใช้ Java