Jelajahi keajaiban menggunakan ekspresi reguler untuk mencari kode Java Anda! Dalam dunia pengkodean, anggaplah ekspresi reguler seperti kode rahasia yang membantu kita menemukan informasi spesifik dalam teks. Artikel ini akan mengajarkan Anda dasar-dasar pencarian dengan ekspresi reguler di Java, sehingga Anda dapat dengan cerdas mencari dokumen dalam format file berbeda di seluruh folder.

Java API untuk Pencarian Regex di Dokumen oleh Regex

Untuk melakukan Pencarian Regex, kami akan menggunakan API GroupDocs.Search for Java. Dengan API ini, kita dapat mencari teks tertentu dalam file dengan format berbeda di seluruh folder, hanya dengan memberinya pola regex. Alat ini memungkinkan kita mencari teks dalam berbagai jenis file, seperti dokumen Word, spreadsheet, presentasi, file PDF, file Markup, eBuku, pesan email, dokumen One Note, dan arsip ZIP, semuanya dengan cara terprogram.

Untuk mendapatkan daftar detail format file yang didukung, lihat dokumentasi detail.

Anda memiliki dua opsi untuk mendapatkan file JAR: unduh dari bagian unduhan, atau gabungkan repositori terbaru dan konfigurasi ketergantungan Maven langsung ke aplikasi Java Anda.

Mencari di File dengan Regex menggunakan Java

Berikut adalah langkah sederhana bagaimana melakukan pencarian regex di banyak file dengan format berbeda dalam folder menggunakan Java. Setelah itu, Anda dapat dengan mudah membuat file keluaran HTML yang disorot untuk setiap dokumen yang berada.

  • Mulailah dengan membuat Indeks dengan menentukan jalur folder.
  • Tambahkan jalur folder utama tempat Anda ingin mencari di indeks yang baru saja Anda buat.
  • Siapkan kueri penelusuran regex.
  • Gunakan metode pencarian untuk menjalankan pencarian dan mendapatkan hasilnya.
  • Sekarang, Anda dapat membuka Hasil Pencarian dan menghasilkan keluaran yang diinginkan sesuai preferensi Anda.

Regex pada kode di bawah ini mendeteksi kata-kata dengan karakter berulang yang berurutan, seperti setuju, menelepon, dan segera. Kode Java ini melakukan pencarian cepat menggunakan regex di berbagai file dengan format berbeda dalam folder berbeda.

// Regex Cari banyak file di seluruh folder menggunakan Java

// Membuat folder indeks dan menambahkan folder dokumen ke dalamnya
Index index = new Index("path/indexing-folder-path");
index.add("path/parent-folder");

// Siapkan Kueri dan Pencarian Regex
// Regex di sini adalah untuk mengidentifikasi semua kata yang memiliki karakter berulang yang berurutan.
String query = "^(.)\\1{1,}"; 
SearchResult result = index.search(query);

Di bawah ini, saya telah menyorot hasil pencarian regex dalam kode yang disediakan:

Hasil Sorotan Pencarian Regex dalam format HTML

Mencetak Hasil Pencarian

Kode Java berikut menawarkan dua metode untuk menampilkan hasil pencarian Anda:

  1. Sorot semua kata yang ditemukan.
  2. Cetak hasilnya dalam format yang mudah dibaca dan dianalisis.
// Menyorot dan Mencetak Hasil Pencarian Regex untuk semua dokumen
for (int i = 0 ; i < result.getDocumentCount(); i++)
{
    FoundDocument document = result.getFoundDocument(i);
  
    OutputAdapter outputAdapter = new FileOutputAdapter(OutputFormat.Html, "path/Highlight" + i + ".html");
    Highlighter highlighter = new DocumentHighlighter(outputAdapter);
    index.highlight(document, highlighter);
 
    System.out.println("\tDocument: " + document.getDocumentInfo().getFilePath());
    System.out.println("\tOccurrences: " + document.getOccurrenceCount());
    for (FoundDocumentField field : document.getFoundFields()) {
        System.out.println("\t\tField: " + field.getFieldName());
        System.out.println("\t\tOccurrences: " + field.getOccurrenceCount());

        // Mencetak istilah yang ditemukan
        if (field.getTerms() != null) {
            for (int k = 0; k < field.getTerms().length; k++) {
                System.out.println("\t\t\t" + field.getTerms()[k] + " - " + field.getTermsOccurrences()[k]);
            }
        }
    }
}
Document: English.txt
Occurrences: 83
	Field: content
	Occurrences: 82
		acceptance          1
		added               1
		agreeable           1
		agreed              1
		all                 4
		appearance          1
		assurance           1
...
===========================================
Document: Lorem ipsum.docx
	Occurrences: 945
...
Field: content
	Occurrences: 939
		accumsan            39
		class               7
		commodo             40
		convallis           38
		dignissim           35
		efficitur           46
		fringilla           40
		habitasse           2
		laoreet             27
		massa               63
		mattis              31
...

Mendapatkan Lisensi Gratis atau Uji Coba Gratis

Lisensi gratis

Dapatkan lisensi sementara gratis untuk menjelajahi perpustakaan ini tanpa batasan.

Uji Coba Gratis

Anda dapat mengunduh uji coba gratis dari bagian unduhan.

Java API untuk Pencarian dalam File dan Folder

Kesimpulan

Dalam artikel ini, kami menjelajahi dasar-dasar keajaiban pencarian Regex untuk menemukan kata-kata dengan pola tertentu dalam beragam dokumen berbasis teks seperti file DOCX, PDF, dan TXT di beberapa folder menggunakan Java. Selanjutnya, kami memamerkan hasil pencarian dengan menyorot kata-kata yang teridentifikasi dan mencetaknya dalam format yang jelas.

Untuk pemahaman menyeluruh tentang API, pembaca didorong untuk menjelajahi dokumentasi dan Referensi API.

Pertanyaan atau diskusi lebih lanjut dapat dijawab di forum.

Lihat juga