GroupDocs.Search’i Java’da Ustalık – regex search java ve Dizin Yönetimi

Giriş

Büyük bir belge yığını içinde indeksleme ve arama yapma görevinde zorlanıyor musunuz? Hukuki dosyalar, akademik makaleler ya da kurumsal raporlarla çalışıyor olun, regex search java metin içinde desenleri hızla bulmanızı sağlayan güçlü bir tekniktir. GroupDocs.Search for Java ile bir indeks oluşturabilir, add documents to index yapabilir ve sadece birkaç satır kodla bulanık, joker karakterli veya düzenli ifade sorguları çalıştırabilirsiniz. Aşağıda ortam kurulumundan gelişmiş arama sorguları oluşturmaya kadar ihtiyacınız olan her şeyi bulacaksınız.

Hızlı Yanıtlar

  • GroupDocs.Search’ün temel amacı nedir? Çeşitli belge formatları için aranabilir indeksler oluşturmak.
  • İndeks oluşturulduktan sonra belgelere ekleyebilir miyim? Evet—yeni dosyaları eklemek için index.add() metodunu kullanın.
  • GroupDocs.Search Java’da bulanık aramayı destekliyor mu? Kesinlikle; SearchOptions üzerinden etkinleştirin.
  • Java’da joker karakterli bir sorgu nasıl çalıştırılır?SearchQuery.createWildcardQuery() ile oluşturun.
  • Üretim ortamı için lisans gerekli mi? Ticari dağıtımlar için geçerli bir GroupDocs.Search lisansı gerekir.

GroupDocs.Search bağlamında “indeks oluşturma” nedir?

Bir indeks oluşturmak, bir veya daha fazla kaynak belgeyi taramayı, aranabilir metni çıkarmayı ve bu bilgiyi verimli bir şekilde sorgulanabilecek yapılandırılmış bir formatta saklamayı ifade eder. Oluşan indeks, binlerce dosya arasında ışık hızıyla arama yapmayı mümkün kılar.

Neden GroupDocs.Search for Java Kullanmalı?

  • Geniş format desteği: PDF, Word, Excel, PowerPoint ve daha fazlası.
  • Yerleşik dil özellikleri: Bulanık arama, joker karakter ve regex search java yetenekleri kutudan çıkar çıkmaz.
  • Ölçeklenebilir performans: Büyük belge koleksiyonlarını yapılandırılabilir bellek kullanımıyla yönetir.

Önkoşullar

  • GroupDocs.Search for Java sürüm 25.4 veya üzeri.
  • Maven projelerini yönetebilen IntelliJ IDEA veya Eclipse gibi bir IDE.
  • Makinenizde yüklü JDK.
  • Java ve arama kavramlarına temel aşinalık.

GroupDocs.Search for Java Kurulumu

Kütüphaneyi Maven üzerinden ekleyebilir veya manuel olarak indirebilirsiniz.

Maven Kurulumu:

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

Doğrudan İndirme:
Alternatif olarak, en yeni sürümü GroupDocs.Search for Java releases adresinden indirebilirsiniz.

Lisans Edinme

  • Ücretsiz Deneme: Özellikleri ücretsiz keşfedin.
  • Geçici Lisans: Deneme süresini uzatın.
  • Tam Lisans: Üretim ortamları için gereklidir.

Kütüphane erişilebilir olduğunda, Java kodunuzda şu şekilde başlatın:

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.");
    }
}

Uygulama Kılavuzu

GroupDocs.Search ile İndeks Oluşturma

Bu bölüm, bir indeks oluşturma ve add documents to index işlemini adım adım anlatır.

Yolları Tanımlama

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

İndeksi Oluşturma

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

Belgeleri İndekse Ekleme

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

Pro ipucu: Dizinlerin var olduğundan ve yalnızca aranabilir dosyaları içerdiğinden emin olun; alakasız dosyalar indeksin şişmesine neden olabilir.

Basit Kelime Sorgusu ve Bulanık Arama Seçenekleri (fuzzy search java)

Bulanık arama, kullanıcı bir kelimeyi yanlış yazdığında ya da OCR hataları oluştuğunda yardımcı olur.

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.");

Java’da Joker Karakterli Sorgu

Joker karakterli sorgular, belirli bir önekle başlayan herhangi bir kelime gibi desenleri eşleştirmenizi sağlar.

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

Java’da Regex Arama

Düzenli ifadeler, tekrar eden karakterleri veya karmaşık token yapılarını bulmak için ince ayarlı kontrol sunar.

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

Alt Sorguları Birleştirerek İfade Arama Sorgusu Oluşturma

Kelime, joker karakter ve regex alt sorgularını karıştırarak gelişmiş ifade aramaları oluşturabilirsiniz.

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.");

Özel Seçeneklerle Arama Yapılandırma ve Gerçekleştirme

Arama seçeneklerini ayarlamak, kaç kez eşleşmenin döndürüleceğini kontrol etmenizi sağlar; bu, büyük veri kümeleri için faydalıdır.

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 – Yaygın Kullanım Senaryoları

  • Hukuki araştırma: DD/MM/YYYY biçimindeki tarih gibi belirli bir deseni izleyen maddeleri bulun.
  • Veri doğrulama: Günlüklerde hatalı kimlikler veya tekrar eden karakterleri tespit edin.
  • İçerik denetimi: Regex kullanarak küfür veya yasaklı desenleri bulun.
  • Finansal analiz: Bilinen bir regex şablonuna uyan işlem kodlarını çıkarın.

Performans Hususları

  • İndeksleme Optimizasyonu: Periyodik olarak yeniden indeksleyin ve eski dosyaları kaldırarak indeksi hafif tutun.
  • Kaynak Kullanımı: JVM yığın boyutunu izleyin; büyük indeksler daha fazla bellek veya off‑heap depolama gerektirebilir.
  • Çöp Toplama: Uzun süre çalışan arama hizmetlerinde duraklamaları önlemek için GC ayarlarını optimize edin.

Sıkça Sorulan Sorular

S: Mevcut bir indeksi sıfırdan yeniden oluşturmadan güncelleyebilir miyim?
C: Evet—yeni dosyaları eklemek için index.add(), değişen belgeleri yenilemek için index.update() kullanın.

S: Bulanık arama farklı dilleri nasıl ele alır?
C: Yerleşik bulanık algoritma Unicode karakterleri üzerinde çalışır, bu yüzden çoğu dili kutudan çıkar çıkmaz destekler.

S: İndeksleyebileceğim belge sayısında bir limit var mı?
C: Pratikte limit, mevcut disk alanı ve JVM belleğiyle belirlenir; kütüphane milyonlarca belge için tasarlanmıştır.

S: Arama seçeneklerini değiştirdikten sonra uygulamayı yeniden başlatmam gerekir mi?
C: Hayır—arama seçenekleri sorgu başına uygulanır, bu yüzden anlık olarak ayarlanabilir.

S: Daha gelişmiş sorgu örneklerini nerede bulabilirim?
C: Resmi GroupDocs.Search dokümantasyonu ve API referansı, karmaşık senaryolar için kapsamlı örnekler sunar.


Son Güncelleme: 2026-03-06
Test Edilen: GroupDocs.Search for Java 25.4
Yazar: GroupDocs