Πώς να δημιουργήσετε ευρετήριο με αναγνώριση χαρακτήρων χρησιμοποιώντας το GroupDocs.Search για Java
Σε σύγχρονες εφαρμογές με μεγάλο όγκο εγγράφων, πώς να δημιουργήσετε ευρετήριο που σέβεται τις λεπτομέρειες του κειμένου σας—όπως παύλες, κάτω παύλες ή σύμβολα ειδικά για γλώσσες—είναι απαραίτητο για γρήγορη και ακριβή ανάκτηση. Σε αυτό το σεμινάριο θα περάσουμε από τη διαμόρφωση της αναγνώρισης χαρακτήρων στο GroupDocs.Search για Java, καλύπτοντας τόσο κανονικούς χαρακτήρες (γράμματα, αριθμούς, κάτω παύλες) όσο και συνδυαστικούς χαρακτήρες (π.χ. παύλες). Στο τέλος, θα μπορείτε να προσαρμόσετε ένα ευρετήριο που ανταποκρίνεται στις ακριβείς ανάγκες του σεναρίου OCR ή αναζήτησης εικόνων, είτε ευρετηριάζετε νομικούς αριθμούς υποθέσεων, αποθετήρια κώδικα ή πολυγλωσσικά PDF.
Γρήγορες Απαντήσεις
- Τι σημαίνει “δημιουργία προσαρμοσμένου ευρετηρίου αναζήτησης”; Σημαίνει τη διαμόρφωση ενός ευρετηρίου ώστε να αντιμετωπίζει συγκεκριμένα σύμβολα ως γράμματα ή συνδυαστικούς χαρακτήρες, αντί να τα αγνοεί.
- Ποια βιβλιοθήκη χρησιμοποιείται; GroupDocs.Search για Java (v25.4 τη στιγμή της συγγραφής).
- Χρειάζομαι άδεια; Μια δωρεάν δοκιμή λειτουργεί για ανάπτυξη· απαιτείται πληρωμένη άδεια για παραγωγή.
- Μπορώ να ευρετηριάσω τόσο PDF όσο και εικόνες; Ναι—το GroupDocs.Search υποστηρίζει OCR σε εικόνες και PDF όταν διαμορφωθεί σωστά.
- Απαιτείται Maven; Το Maven είναι η προτεινόμενη μέθοδος διαχείρισης εξαρτήσεων, αλλά μπορείτε επίσης να χρησιμοποιήσετε Gradle ή χειροκίνητα JARs.
Τι είναι ένα Προσαρμοσμένο Ευρετήριο Αναζήτησης;
Ένα προσαρμοσμένο ευρετήριο σας επιτρέπει να ορίσετε πώς η μηχανή αναζήτησης ερμηνεύει τους χαρακτήρες. Από προεπιλογή, πολλά σύμβολα αγνοούνται, κάτι που μπορεί να οδηγήσει σε χαμένα αποτελέσματα για στοιχεία όπως αριθμούς υποθέσεων (2023-AB-456) ή αποσπάσματα κώδικα (my_variable). Η προσαρμογή του λεξικού αλφαβήτου σας δίνει πλήρη έλεγχο πάνω σε τι θεωρείται αναζητήσιμο κείμενο.
Γιατί να Διαμορφώσετε Κανονικούς και Συνδυαστικούς Χαρακτήρες για Νομικούς Αριθμούς Υποθέσεων;
- Κανονικοί χαρακτήρες (γράμματα, αριθμοί, κάτω παύλες) τοποθετούνται σε ξεχωριστά tokens, επιτρέποντας ακριβείς αναζητήσεις για ταυτοποιητές.
- Συνδυαστικοί χαρακτήρες (παύλες, καθέτους) διατηρούν τα σχετικά tokens μαζί, αποτρέποντας ανεπιθύμητο διαχωρισμό αριθμών υποθέσεων, κωδικών προϊόντων ή διαδρομών αρχείων.
- Αυτή η διαμόρφωση βελτιστοποιεί την απόδοση του ευρετηρίου μειώνοντας τη θραύση των tokens και βελτιώνοντας τη συνάφεια για περιεχόμενο που παράγεται από OCR.
Προαπαιτούμενα
- JDK 8 ή νεότερο εγκατεστημένο.
- Maven για διαχείριση εξαρτήσεων.
- Πρόσβαση στη βιβλιοθήκη GroupDocs.Search για Java (λήψη μέσω Maven ή του επίσημου ιστότοπου).
Απαιτούμενες Βιβλιοθήκες και Εξαρτήσεις
Προσθέστε τις εγγραφές αποθετηρίου και εξάρτησης στο pom.xml σας (όπως φαίνεται παρακάτω). Το 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>
Μπορείτε επίσης να κατεβάσετε τα πιο πρόσφατα JARs από GroupDocs.Search for Java releases.
Απόκτηση Άδειας
- Δωρεάν Δοκιμή – ιδανική για πρώιμες πειραματισμούς.
- Προσωρινή Άδεια – χρήσιμη για μεγαλύτερους κύκλους ανάπτυξης.
- Άδεια Παραγωγής – απαιτείται για εμπορική ανάπτυξη.
Λάβετε άδεια από την επίσημη πύλη: GroupDocs.
Βασική Αρχικοποίηση
Το παρακάτω απόσπασμα δείχνει τον ελάχιστο κώδικα που απαιτείται για τη δημιουργία ενός κεντρικού ευρετηρίου. Διατηρήστε το όπως είναι· θα το επεκτείνουμε αργότερα.
import com.groupdocs.search.*;
public class GroupDocsSearchSetup {
public static void main(String[] args) {
String indexFolder = "YOUR_OUTPUT_DIRECTORY";
String documentFolder = "YOUR_DOCUMENT_DIRECTORY";
Index index = new Index(indexFolder);
System.out.println("GroupDocs.Search setup completed!");
}
}
Ρύθμιση GroupDocs.Search για Java
Εγκατάσταση μέσω Maven
Η διαμόρφωση Maven από την ενότητα Προαπαιτούμενα είναι ό,τι χρειάζεστε. Μετά την προσθήκη, εκτελέστε mvn clean install για λήψη των δυαδικών.
Απαιτήσεις Περιβάλλοντος
- Βεβαιωθείτε ότι ο φάκελος ευρετηρίου και ο φάκελος εγγράφων υπάρχουν στο δίσκο.
- Χρησιμοποιήστε απόλυτες διαδρομές ή ρυθμίστε το IDE σας ώστε να επιλύει σωστά τις σχετικές διαδρομές.
Οδηγός Υλοποίησης
Παρακάτω περπατάμε μέσα από δύο ξεχωριστά χαρακτηριστικά: κανονικούς χαρακτήρες και συνδυαστικούς χαρακτήρες. Κάθε χαρακτηριστικό ακολουθεί το ίδιο μοτίβο—ορισμός διαδρομών, δημιουργία ευρετηρίου, ορισμός λεξικού χαρακτήρων και τέλος ευρετηρίαση των εγγράφων.
Χαρακτηριστικό 1 – Κανονικοί Χαρακτήρες
Επισκόπηση
Οι κανονικοί χαρακτήρες αντιμετωπίζονται ως ανεξάρτητα tokens. Αυτό είναι ιδανικό όταν θέλετε οι αριθμοί, τα γράμματα και οι κάτω παύλες να είναι αναζητήσιμα ακριβώς όπως εμφανίζονται.
Υλοποίηση Βήμα‑βήμα
1️⃣ Ορισμός Διαδρομών
Καθορίστε πού θα αποθηκευτεί το ευρετήριο και πού βρίσκονται τα πηγαία έγγραφα.
String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterTypes/RegularCharacters";
String documentFolder = "YOUR_DOCUMENT_DIRECTORY";
2️⃣ Δημιουργία και Διαμόρφωση Ευρετηρίου
Δημιουργήστε το ευρετήριο και διαγράψτε τυχόν προϋπάρχουσα διαμόρφωση αλφαβήτου.
Index index = new Index(indexFolder);
index.getDictionaries().getAlphabet().clear();
3️⃣ Ορισμός Κανονικών Χαρακτήρων
Δημιουργήστε έναν πίνακα χαρακτήρων που περιλαμβάνει αριθμούς, λατινικά γράμματα και την κάτω παύλα.
StringBuilder sb = new StringBuilder();
for (char i = 0x0030; i <= 0x0039; i++) { // Digits
sb.append(i);
}
for (char i = 0x0041; i <= 0x005A; i++) { // Latin capital letters
sb.append(i);
}
sb.append(0x005F); // Underscore
for (char i = 0x0061; i <= 0x007A; i++) { // Latin small letters
sb.append(i);
}
// Convert to character array and set as alphabet range
char[] characters = new char[sb.length()];
sb.getChars(0, sb.length(), characters, 0);
index.getDictionaries().getAlphabet().setRange(characters, CharacterType.Letter);
4️⃣ Ευρετηρίαση Εγγράφων
Προσθέστε όλα τα αρχεία από τον φάκελο πηγής στο νεοδιαμορφωμένο ευρετήριο.
index.add(documentFolder);
Χαρακτηριστικό 2 – Συνδυαστικοί Χαρακτήρες
Επισκόπηση
Οι συνδυαστικοί χαρακτήρες (όπως οι παύλες) συχνά συνδέουν δύο λέξεις. Η σήμανσή τους ως συνδυαστικοί λέει στη μηχανή να διατηρεί τα γύρω tokens μαζί κατά την ευρετηρίαση.
Υλοποίηση Βήμα‑βήμα
1️⃣ Ορισμός Διαδρομών
String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterTypes/BlendedCharacters";
String documentFolder = "YOUR_DOCUMENT_DIRECTORY";
2️⃣ Δημιουργία και Διαμόρφωση Ευρετηρίου
Index index = new Index(indexFolder);
3️⃣ Ορισμός Συνδυαστικών Χαρακτήρων
Εδώ λέμε στο λεξικό ότι η παύλα πρέπει να αντιμετωπίζεται ως συνδυαστικός χαρακτήρας.
index.getDictionaries().getAlphabet().setRange(new char[] { '-' }, CharacterType.Blended);
4️⃣ Ευρετηρίαση Εγγράφων
index.add(documentFolder);
Πρακτικές Εφαρμογές
Περίπτωση Χρήσης 1 – Διαχείριση Νομικών Εγγράφων
Τα νομικά αρχεία συχνά περιέχουν αριθμούς υποθέσεων όπως 2023-AB-456. Με τη διαμόρφωση των κάτω παυλών και παυλών, οι αναζητήσεις επιστρέφουν ακριβείς αντιστοιχίες χωρίς διαχωρισμό του ταυτοποιητή, βοηθώντας σας να αναζητήσετε νομικούς αριθμούς υποθέσεων αποδοτικά.
Περίπτωση Χρήσης 2 – Αποθετήρια Πηγαίου Κώδικα
Οι προγραμματιστές χρειάζονται αναζήτηση αποσπασμάτων κώδικα όπου οι κάτω παύλες (my_variable) και οι παύλες (my-function) έχουν σημασία. Η προσαρμοσμένη αναγνώριση χαρακτήρων εξασφαλίζει ότι η μηχανή αναζήτησης σέβεται αυτά τα σύμβολα.
Περίπτωση Χρήσης 3 – Πολυγλωσσικά Σύνολα Δεδομένων
Όταν εργάζεστε με γλώσσες που χρησιμοποιούν επιπλέον αλφάβητα, μπορείτε να επεκτείνετε το σύνολο χαρακτήρων Unicode ώστε να περιλαμβάνει αυτές τις περιοχές, εξασφαλίζοντας ακριβή αποτελέσματα αναζήτησης μεταξύ γλωσσών.
Περίπτωση Χρήσης 4 – Ευρετηρίαση PDF Εικόνων
Αν ευρετηριάζετε σαρωμένα PDF ή αρχεία εικόνας, η έξοδος OCR συχνά περιέχει μεικτούς χαρακτήρες. Η σωστή διαμόρφωση των κανονικών και συνδυαστικών χαρακτήρων βελτιστοποιεί την απόδοση του ευρετηρίου για περιεχόμενο βασισμένο σε εικόνες.
Σκέψεις για την Απόδοση
- Διαχείριση Πόρων – Παρακολουθείτε τη χρήση heap· μεγάλα ευρετήρια ωφελούνται από σταδιακές υποβολές.
- Garbage Collection – Αποδεσμεύστε αντικείμενα
Indexόταν τελειώσετε, ώστε η JVM να ανακτήσει μνήμη. - Βελτιστοποίηση Ευρετηρίου – Καλέστε περιοδικά
index.optimize()(αν είναι διαθέσιμο) για συμπίεση του ευρετηρίου και βελτίωση της ταχύτητας ερωτημάτων.
Συμπέρασμα
Τώρα γνωρίζετε πώς να δημιουργήσετε ευρετήριο που διακρίνει μεταξύ κανονικών και συνδυαστικών χαρακτήρων χρησιμοποιώντας το GroupDocs.Search για Java. Αυτός ο λεπτομερής έλεγχος σας δίνει τη δυνατότητα να δημιουργήσετε λύσεις αναζήτησης υψηλής απόδοσης, ευαίσθητες σε OCR, προσαρμοσμένες σε νομικά, προγραμματιστικά ή πολυγλωσσικά περιβάλλοντα.
Επόμενα Βήματα
- Πειραματιστείτε με επιπλέον περιοχές Unicode για μη‑λατινικά αλφάβητα.
- Συνδυάστε τη διαμόρφωση χαρακτήρων με άλλες δυνατότητες του GroupDocs.Search όπως stemming ή συνώνυμα.
- Ενσωματώστε το ευρετήριο σε ένα REST API για να εκθέσετε τις δυνατότητες αναζήτησης σε εφαρμογές front‑end.
Συχνές Ερωτήσεις
Ε: Ποιος είναι ο σκοπός του CharacterType.Letter;
Α: Υποδεικνύει στο ευρετήριο να αντιμετωπίζει τους παρεχόμενους χαρακτήρες ως κανονικά γράμματα, ώστε να τοκενίζονται ξεχωριστά κατά την ευρετηρίαση.
Ε: Μπορώ να συνδυάσω κανονικούς και συνδυαστικούς χαρακτήρες στο ίδιο ευρετήριο;
Α: Ναι—απλώς καλέστε setRange για κάθε τύπο· το λεξικό θα διαχειριστεί και τις δύο διαμορφώσεις ταυτόχρονα.
Ε: Πρέπει να ξαναχτίσω το ευρετήριο μετά την αλλαγή του αλφαβήτου;
Α: Απόλυτα. Οι αλλαγές στο λεξικό χαρακτήρων επηρεάζουν την τοκενίση, επομένως πρέπει να επανευρετηριάσετε τα έγγραφα για να εφαρμοστούν οι νέοι κανόνες.
Ε: Υπάρχει όριο στον αριθμό των προσαρμοσμένων χαρακτήρων που μπορώ να ορίσω;
Α: Η βιβλιοθήκη υποστηρίζει ολόκληρο το εύρος Unicode· η απόδοση μπορεί να υποχωρήσει αν προσθέσετε εξαιρετικά μεγάλο σύνολο, οπότε περιορίστε το σε χαρακτήρες που πραγματικά χρειάζεστε.
Ε: Πώς αυτό επηρεάζει την ακρίβεια του OCR;
Α: Ευθυγραμμίζοντας το σύνολο χαρακτήρων του ευρετηρίου με την έξοδο του OCR, μειώνετε τα ψευδώς αρνητικά και βελτιώνετε τη συνολική συνάφεια των αποτελεσμάτων αναζήτησης.
Τελευταία Ενημέρωση: 2026-03-17
Δοκιμή Με: GroupDocs.Search 25.4 for Java
Συγγραφέας: GroupDocs