Maîtriser GroupDocs.Search en Java – regex search java et gestion d’index

Introduction

Êtes-vous confronté à la tâche d’indexer et de rechercher parmi un grand nombre de documents ? Que vous manipuliez des dossiers juridiques, des articles académiques ou des rapports d’entreprise, regex search java est une technique puissante qui vous permet de repérer rapidement des motifs dans le texte. Avec GroupDocs.Search for Java, vous pouvez créer un index, add documents to index, et exécuter des requêtes floues, génériques ou d’expressions régulières en quelques lignes de code seulement. Vous découvrirez ci‑dessous tout ce dont vous avez besoin pour commencer, de la configuration de l’environnement à la création de requêtes de recherche sophistiquées.

Réponses rapides

  • Quel est le but principal de GroupDocs.Search ? Créer des index consultables pour une large gamme de formats de documents.
  • Puis‑je ajouter des documents à l’index après sa création ? Oui — utilisez la méthode index.add() pour inclure de nouveaux fichiers.
  • GroupDocs.Search prend‑il en charge la recherche floue en Java ? Absolument ; activez‑la via SearchOptions.
  • Comment exécuter une requête générique (wildcard) en Java ? Créez‑la avec SearchQuery.createWildcardQuery().
  • Une licence est‑elle requise pour une utilisation en production ? Une licence valide de GroupDocs.Search est nécessaire pour les déploiements commerciaux.

Qu’est‑ce que « how to create index » dans le contexte de GroupDocs.Search ?

Créer un index consiste à analyser un ou plusieurs documents sources, à extraire le texte consultable et à stocker ces informations dans un format structuré pouvant être interrogé efficacement. L’index ainsi généré permet des recherches ultra‑rapides, même sur des milliers de fichiers.

Pourquoi utiliser GroupDocs.Search pour Java ?

  • Large prise en charge des formats : PDFs, Word, Excel, PowerPoint et bien d’autres.
  • Fonctionnalités linguistiques intégrées : recherche floue, wildcard et capacités regex search java prêtes à l’emploi.
  • Performance évolutive : gère de grandes collections de documents avec une utilisation de mémoire configurable.

Prérequis

  • GroupDocs.Search for Java version 25.4 ou ultérieure.
  • Un IDE tel qu’IntelliJ IDEA ou Eclipse capable de gérer des projets Maven.
  • JDK installé sur votre machine.
  • Familiarité de base avec Java et les concepts de recherche.

Configuration de GroupDocs.Search pour Java

Vous pouvez ajouter la bibliothèque via Maven ou la télécharger manuellement.

Configuration Maven :

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

Téléchargement direct :
Sinon, téléchargez la dernière version depuis versions GroupDocs.Search pour Java.

Acquisition de licence

  • Essai gratuit : explorez les fonctionnalités sans frais.
  • Licence temporaire : prolongez la période d’essai.
  • Licence complète : requise pour les environnements de production.

Une fois la bibliothèque disponible, initialisez‑la dans votre code Java :

import com.groupdocs.search.*;

public class InitializeSearch {
    public static void main(String[] args) {
        // Create an index instance
        Index index = new Index("YOUR_DOCUMENT_DIRECTORY\\output");
        
        System.out.println("GroupDocs.Search initialized successfully.");
    }
}

Guide d’implémentation

Comment créer un index avec GroupDocs.Search

Cette section vous guide à travers le processus complet de création d’un index et add documents to index.

Définition des chemins

String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\CreateAndIndexDocuments";
String documentsFolder = "YOUR_DOCUMENT_DIRECTORY";

Création de l’index

Index index = new Index(indexFolder);
System.out.println("Index created at: " + indexFolder);

Ajout de documents à l’index

index.add(documentsFolder);
System.out.println("Documents added to the index.");

Astuce : Assurez‑vous que les répertoires existent et ne contiennent que les fichiers que vous souhaitez rendre recherchables ; les fichiers non pertinents peuvent alourdir l’index.

Requête simple de mot avec options de recherche floue (fuzzy search java)

La recherche floue aide lorsqu’un utilisateur se trompe de mot ou lorsque l’OCR introduit des erreurs.

SearchQuery subquery = SearchQuery.createWordQuery("future");
subquery.setSearchOptions(new SearchOptions());
subquery.getSearchOptions().getFuzzySearch().setEnabled(true);
subquery.getSearchOptions().getFuzzySearch()
        .setFuzzyAlgorithm(new TableDiscreteFunction(3));
System.out.println("Fuzzy search enabled with a tolerance of 3.");

Requête wildcard Java

Les requêtes wildcard vous permettent de faire correspondre des motifs, comme tout mot commençant par un préfixe spécifique.

SearchQuery subquery = SearchQuery.createWildcardQuery(1);
System.out.println("Wildcard query created.");

Recherche regex Java

Les expressions régulières vous offrent un contrôle fin sur la correspondance de motifs, idéal pour trouver des caractères répétés ou des structures de jetons complexes.

SearchQuery subquery = SearchQuery.createRegexQuery("(.)\\1");
System.out.println("Regex query created to find repeated characters.");

Combinaison de sous‑requêtes dans une requête de recherche de phrase

Vous pouvez mélanger des sous‑requêtes de type mot, wildcard et regex pour créer des recherches de phrase sophistiquées.

SearchQuery subquery1 = SearchQuery.createWordQuery("future");
SearchQuery subquery2 = SearchQuery.createWildcardQuery(1);
SearchQuery subquery3 = SearchQuery.createRegexQuery("(.)\\1");
SearchQuery combinedQuery = SearchQuery.createPhraseSearchQuery(subquery1, subquery2, subquery3);
System.out.println("Combined phrase search query created.");

Configuration et exécution d’une recherche avec des options personnalisées

Ajuster les options de recherche vous permet de contrôler le nombre d’occurrences retournées, ce qui est utile pour de grands corpus.

SearchOptions options = new SearchOptions();
options.setMaxOccurrenceCountPerTerm(1000000);
options.setMaxTotalOccurrenceCount(10000000);
System.out.println("Custom search options configured.");
Index index = new Index("YOUR_DOCUMENT_DIRECTORY\\output\\ConfigureAndPerformSearch");
SearchQuery query = SearchQuery.createWordQuery("future");

SearchResult result = index.search(query, options);
System.out.println("Search performed with custom options.");

regex search java – Cas d’utilisation courants

  • Recherche juridique : localisez les clauses qui suivent un motif spécifique, comme les dates au format DD/MM/YYYY.
  • Validation de données : détectez les identifiants mal formés ou les caractères répétés dans les journaux.
  • Modération de contenu : trouvez les propos offensants ou les motifs interdits à l’aide de regex.
  • Analyse financière : extrayez les codes de transaction qui correspondent à un modèle regex connu.

Considérations de performance

  • Optimiser l’indexation : ré‑indexez périodiquement et supprimez les fichiers obsolètes pour garder l’index léger.
  • Utilisation des ressources : surveillez la taille du tas JVM ; les gros index peuvent nécessiter plus de mémoire ou un stockage hors tas.
  • Garbage Collection : ajustez les paramètres GC pour les services de recherche de longue durée afin d’éviter les pauses.

Questions fréquemment posées

Q : Puis‑je mettre à jour un index existant sans le reconstruire entièrement ?
R : Oui — utilisez index.add() pour ajouter de nouveaux fichiers ou index.update() pour actualiser les documents modifiés.

Q : Comment la recherche floue gère‑t‑elle les différentes langues ?
R : L’algorithme flou intégré fonctionne sur les caractères Unicode, il prend donc en charge la plupart des langues dès le départ.

Q : Existe‑t‑il une limite au nombre de documents que je peux indexer ?
R : En pratique, la limite dépend de l’espace disque disponible et de la mémoire JVM ; la bibliothèque est conçue pour des millions de documents.

Q : Dois‑je redémarrer l’application après avoir modifié les options de recherche ?
R : Non — les options de recherche sont appliquées par requête, vous pouvez donc les ajuster à la volée.

Q : Où puis‑je trouver des exemples de requêtes plus avancés ?
R : La documentation officielle de GroupDocs.Search et la référence API offrent de nombreux exemples pour des scénarios complexes.


Dernière mise à jour : 2026-03-06
Testé avec : GroupDocs.Search for Java 25.4
Auteur : GroupDocs