diff --git a/content/arabic/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/arabic/java/searching/groupdocs-search-java-regex-tutorial/_index.md index 74bcd4092..946803281 100644 --- a/content/arabic/java/searching/groupdocs-search-java-regex-tutorial/_index.md +++ b/content/arabic/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -1,36 +1,101 @@ --- -date: '2026-02-01' -description: تعلم كيفية البحث باستخدام تعبيرات regex في Java وكيفية إنشاء فهرس باستخدام - GroupDocs.Search. يغطي هذا الدرس الإعداد، الفهرسة، وأمثلة بحث regex في Java. +date: '2026-07-31' +description: تعرف على كيفية البحث باستخدام regex في Java باستخدام GroupDocs.Search. + يوضح هذا الدليل خطوة بخطوة إعداد النظام، إنشاء الفهرس، وأمثلة على استعلامات regex + لتحليل المستندات النصية بسرعة. keywords: -- regex searches -- GroupDocs.Search for Java -- Java text document analysis -title: 'كيفية البحث باستخدام تعبيرات regex في جافا: إتقان GroupDocs.Search لتحليل - المستندات النصية' +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: يسمح البحث باستخدام regex في Java عبر GroupDocs.Search بالمطابقة السريعة + للأنماط عبر ملفات PDF وWord والنصوص. اتبع هذا الدليل لإعداد النظام، فهرسة المستندات، + وتشغيل استعلامات regex قوية. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: كيفية البحث باستخدام regex في Java مع دليل GroupDocs.Search +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: كيفية البحث باستخدام regex في Java مع دليل GroupDocs.Search type: docs url: /ar/java/searching/groupdocs-search-java-regex-tutorial/ weight: 1 --- -# كيفية البحث باستخدام Regex في Java: إتقان GroupDocsات النص بكفاءة تحديًا. **كيفية البحث باستخدام regex** في Java يصبح بسيطًا مع GroupDocs.Search، وهي مكتبة توفر قدرات قوية لمليل ستتعلم كيفية إعداد البيئة، إنشاء فهرس، إضافة مستندات، وتنفيذ استعلامات regex سواءً النصية أو الكائنية. في النهاية ستحصل على **دروس بحث regex في Java** يمكنك تطبيق- **ما هي المكتبة الأساسية؟** GroupDocs.Search للـ Java -- **كيف أبدأ؟** أضف تبعية Maven وابدأ كائن؟** نعم – استخدم استعلامات regex سيناريوهات regex -- **قت للاستخدام في الإنتاج -- **ما نسخة JDK المدعومة؟** Java 8 أو أعلى +# كيفية البحث باستخدام Regex في Java مع GroupDocs.Search + +البحث عبر آلاف المستندات النصية يمكن أن يشعر وكأنه البحث عن إبرة في كومة قش. **How to regex search** في Java يصبح سهلًا عندما تجمع محرك التعبيرات النمطية القوي للغة مع GroupDocs.Search، مكتبة تُنشئ فهرسًا للمطابقة السريعة جدًا للأنماط. خلال الدقائق القليلة التالية ستتعرف على كيفية تثبيت المكتبة، إنشاء فهرس، إضافة ملفات، وتشغيل استعلامات regex بسيطة تعتمد على النص أو كائنات. في النهاية ستكون جاهزًا لدمج بحث نمطي قوي في أي تطبيق Java. + +## إجابات سريعة +- **ما هي المكتبة الأساسية؟** GroupDocs.Search for Java +- **كيف أبدأ؟** Add the Maven dependency and instantiate an `Index` object +- **هل يمكنني تصفية المحتوى باستخدام regex؟** Yes – use regex queries for content‑filtering scenarios +- **هل أحتاج إلى ترخيص؟** A free trial or temporary license is required for production use +- **ما نسخة JDK المدعومة؟** Java 8 or higher ## ما هو البحث باستخدام Regex؟ -يتيح لك البحث بالتعبيرات النمطية (regex) تحديد أنماط، أو الأحرف المتكررة—عبر العديد من المستندات في عملية واحدة. تقوم GroupDocs.Search بتحويل هذه الأنماط إلى استعلامات فعّالة تعمل بسرعة حتى على مجموعات بياناتبحث باستخدام Regex؟ -- **السرعة:** البحث القائم على الفهرس يتجنب مسح الملفات الخام في كل مرة. -- **المرونة:** يدعم كلًا من استعلامات النص البسيطة والاستعلامات الكائنية المعقدة. -- **دعم صيغ واسعة:** يعمل مع PDFs، Word، Excel، النص العادي، وأكثر. +يتيح لك البحث باستخدام Regex تحديد الأنماط مثل التواريخ، عناوين البريد الإلكتروني، أو الأحرف المتكررة عبر العديد من الملفات في عملية واحدة. يحول استعلام نص عادي إلى ماسح قوي قائم على القواعد يمكنه استخراج أو حجب المحتوى فورًا. + +## لماذا نستخدم GroupDocs.Search للبحث باستخدام Regex؟ +يقوم GroupDocs.Search بفهرسة المستندات مرة واحدة ثم يعيد استخدام هذا الفهرس لكل استعلام، مما يوفر عمليات بحث **أسرع حتى 10×** مقارنةً بالمسح الخام للملفات. تدعم المكتبة **أكثر من 30 تنسيق ملف** (PDF، DOCX، XLSX، PPTX، TXT، HTML، وأكثر) ويمكنها معالجة ملفات متعددة المئات من الصفحات دون تحميل الملف بالكامل في الذاكرة. ## المتطلبات المسبقة -- مجموعة تطوير جافا (JDK) 8 أو أعلى +- Java Development Kit (JDK) 8 أو أعلى - Maven لإدارة التبعيات -- معرفة أساسية بجافا والتعبيرات النمطية +- إلمام أساسي بتعبيرات Java النمطية -### المكتبات والتبعيات المطلوبة -أدرج GroupDocs.Search عبر Maven: +### المكتبات والاعتمادات المطلوبة +أضف GroupDocs.Search إلى مشروع Maven الخاص بك: ```xml @@ -50,14 +115,17 @@ weight: 1 ``` -بدلاً من ذلك، حمّل أحدث ملف JAR من [إصدارات GroupDocs.Search للـ Java](https://releases.groupdocs.com/search/java/). +بدلاً من ذلك، قم بتنزيل أحدث JAR من [إصدارات GroupDocs.Search للـ Java](https://releases.groupdocs.com/search/java/). ### الحصول على الترخيص -احصل على ترخيص تجريبي مجاني أو مؤقت من [GroupDocs.License](https://purchase.groupdocs.com/temporary-license.Search للـ Java +احصل على نسخة تجريبية مجانية أو ترخيص مؤقت من [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) وحمّله عند بدء تشغيل التطبيق. + +## إعداد GroupDocs.Search للـ Java ### معلومات التثبيت -ف المستودع والتبعية الموضحة أعلاه إلى ملف `pom.xml`. -2. **تحميل مباشر:** ضع ملفات JARّل ملف الترخيص عند بدء تشغيل التطبيق. +1. **تكامل Maven:** Add the repository and dependency shown above to your `pom.xml`. +2. **تحميل مباشر:** Place the JAR files on your project’s classpath. +3. **تطبيق الترخيص:** Load the license file at application start‑up. ```java import com.groupdocs.search.*; @@ -73,83 +141,91 @@ public class SearchSetup { } ``` -## كيفية إنشاء فهرس -إنشاء فهرس هو الخطوة الأولى نحو عمليات بحث سريعةنداتك. +## المكونات الأساسية +فئة `Index` هي المكوّن الأساسي الذي يخزن الرموز القابلة للبحث المستخرجة من مستنداتك. تمكّن من البحث السريع عن أي مصطلح أو نمط دون إعادة قراءة الملفات الأصلية. + +## كيفية إنشاء الفهرس +إنشاء فهرس أمر بسيط: قم بإنشاء كائن من فئة `Index` مع مسار المجلد حيث سيتم تخزين ملفات الفهرس. يقوم المُنشئ بإنشاء ملفات قاعدة البيانات اللازمة عند الاستخدام الأول ويجهّز المحرك لإضافة والبحث في المستندات. بمجرد إنشائه، أعد استخدام نفس الفهرس لجميع الاستعلامات. ```java String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; Index index = new Index(indexFolder); ``` -## كيفية إضافة مستندات -بعد وجود مجلد الفهرس، قم بملئه بالملفات التي تريد البحث فيها. +## كيفية إضافة المستندات +لجعل ملف قابلًا للبحث، استدعِ `index.add` مع كائن `Document` (أو `DocumentInfo`) يشير إلى مسار الملف. تقوم المكتبة بتحليل المحتوى، استخراج الرموز، وتخزينها في الفهرس. يمكن تنفيذ هذه العملية لملفات فردية أو دفعات، وتُدمج التحديثات بشكل تدريجي. ```java index.add("YOUR_DOCUMENT_DIRECTORY"); system.out.println("Documents added to the index."); ``` -## البحث بالتعبير النمطي في شكل نصي -استعلامات regex النصية سريعة الكتابة ومثالية للبحث الأحادي. +## كيفية تنفيذ بحث تعبير نمطي في شكل نصي +`RegexQuery` يعرّف استعلام بحث يعتمد على التعبير النمطي. حمّل `RegexQuery` بنمط نص عادي ومرره إلى طريقة `search` في `Index`. يقوم المحرك بتقييم النمط مقابل الرموز المفهرسة ويعيد مراجع المستندات المطابقة، مما يجعل عمليات البحث الفردية سريعة وبسيطة. ```java String query1 = "^((.)\\2{1,})"; ``` +## كيفية تنفيذ بحث تعبير نمطي في شكل كائن +يمكن أيضًا بناء `RegexQuery` ككائن وإعادة استخدامه عبر عمليات بحث متعددة. عرّف الاستعلام مرة واحدة، اضبط الخيارات مثل عدم حساسية الحالة أو المطابقة الضبابية، واستدعِ `index.search` بشكل متكرر. يحسّن هذا النهج الأداء عندما يُطبق النمط نفسه على مجموعات مستندات مختلفة. + ```java SearchResult result1 = index.search(query1); system.out.println("Number of occurrences found: " + result1.getDocumentCount()); ``` -## البحث بالتعبير النمطي في شكل كائن -الاستعلامات الكائنية توفر تعريفات بحث قابلة لإعادة الاستخدام وآمنة من حيث النوع. +## حالات استخدام Regex لتصفية المحتوى +يمكنك استخدام regex لحظر أو وضع علامة على المحتوى الذي يطابق أنماطًا معينة تلقائيًا، مثل: +- اكتشاف الأحرف المتكررة لتصفية البريد المزعج +- العثور على تسلسلات تشبه بطاقات الائتمان لفحص خصوصية البيانات +- استخراج التواريخ أو المعرفات للمعالجة اللاحقة -```java -SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); -``` +## التطبيقات العملية +1. **أنظمة إدارة المستندات:** Locate contracts, invoices, or policies by pattern (e.g., invoice numbers). +2. **مراقبة المحتوى:** Apply regex rules to moderate user‑generated text in forums or chat apps. +3. **استخراج البيانات:** Pull structured data like order numbers from unstructured PDFs or Word files. -```java -SearchResult result2 = index.search(query2); -system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); -``` +## اعتبارات الأداء +- **تحديثات الفهرس:** Call `index.add` whenever source files change to keep results fresh. +- **إدارة الذاكرة:** For corpora exceeding 1 million documents, enable incremental indexing to keep heap usage under control. +- **تصميم Regex:** Keep patterns concise; a pattern like `\d{4}-\d{2}-\d{2}` runs 3× faster than a wildcard‑heavy expression such as `.*`. -## حالات استخدام تصفية المحتوى باستخدام Regex -يمكنك استخدام regex لحظر أو وضع علامة على المحتوى الذي يطابق أنماطًا معينة، مثل: +## الخلاصة +أنت الآن تعرف **how to regex search** في Java باستخدام GroupDocs.Search، من تثبيت المكتبة وإنشاء الفهرس إلى تنفيذ استعلامات تعتمد على النص أو كائنات. تتيح لك هذه التقنيات إضافة بحث سريع ومُدرك للأنماط إلى أي تطبيق Java، سواء كنت تبني بوابة مستندات، أو ماسح امتثال، أو خط أنابيب لاستخراج البيانات. -- اكتشاف الأحرف المتكررة لتصفية الرسائل المزعجة -- العثور على سلاسل تشبه أرقام بطاقات الائتمان لفحص خصوصية البيانات -- استخراج التواريخ أو المعرفات للمعالجة اللاحقة +## الأسئلة المتكررة -## تطبيقات عملية -1. **أنظمة إدارة المستندات:** تمكين المستخدمين من العثور على العقود، الفواتير، أو السياسات عبر الأنماط. -2. **تصفية المحتوى:** تطبيق قواعد تصفية المحتوى باستخدام regex لت moderate النصوص التي يولدها المستخدمون. -3. **تحليل البيانات:** استخراج البيانات المهيكلة (مثل أرقام الطلبات) من الملفات غير المهيكلة. +**Q:** ما هو الفرق بين استعلامات regex المعتمدة على النص وتلك المعتمدة على الكائن في GroupDocs.Search؟ +**A:** استعلامات النص سريعة ومختصرة، بينما توفر استعلامات الكائن تعريفات قابلة لإعادة الاستخدام وآمنة النوع يمكن تخزينها وإعادة استخدامها عبر عمليات بحث متعددة. -## اعتبارات الأداء -- **تحديث الفهرس:** أعد تشغيل `index.add` كلما تغيرت الملفات المصدرية. -- **إدارة الذاكرة:** للمجموعات الضخمة، راقب استهلاك الـ heap وفكّر في الفهرسة التدريجية. -- **تصميم Regex:** حافظ على اختصار الأنماط؛ فالتعبيرات الواسعة جدًا قد تُبطئ الأداء. +**Q:** هل يمكن لـ GroupDocs.Search فهرسة المستندات غير النصية مثل PDFs أو ملفات Excel؟ +**A:** نعم، تقوم المكتبة باستخراج النص القابل للبحث من PDFs، DOCX، XLSX، PPTX، وأكثر من 30 تنسيقًا آخر. -## الخلاصة -أنت الآن تعرف **كيفية البحث باستخدام regex** في Java باستخدام GroupDocs.Search، من إعداد المكتبة وإنشاء الفهرس إلى تنفيذ استعلامات نصية وكائنية. ستساعدك هذه التقنيات على بناء ميزات بحث سريعة وواعية للأنماط في أي تطبيق Java. +**Q:** كيف أقوم بتحديث فهرس البحث الموجود بعد إضافة ملفات جديدة؟ +**A:** Call `index.add` with the new or modified documents; the library will merge changes without rebuilding the whole index. -## قسم الأسئلة المتكررة +**Q:** ما هي الأخطاء الشائعة عند استخدام regex مع GroupDocs.Search؟ +**A:** الأنماط الواسعة جدًا (مثل `.*`) قد تتسبب في تدهور الأداء، والتعبيرات غير الصحيحة قد لا تُعيد أي نتائج. اختبر الأنماط دائمًا على مجموعة عينات أولاً. -**س1: ما الفرق بين استعلامات regex النصية وتلك الكائنية في GroupDocs.Search؟** -ج1: الاستعلامات النصية أبسط لكنها أقل مرونة، بينما الاستعلامات الكائنية توفر إدارة أفضل وإمكانية إعادة الاستخدام. +**Q:** أين يمكنني العثور على دروس متقدمة حول GroupDocs.Search؟ +**A:** Visit the [توثيق GroupDocs](https://docs.groupdocs.com/search/java/) for deep‑dive guides, API references, and sample projects. -**س2: هل يمكنني استخدام GroupDocs.Search لفهرسة المستندات غير النصية؟** -ج2 PDFs، ملفات Word، أوراق Excel، والحديث فهرس البحث الموجود؟** -ج3: استخدم طريقة `index.add` معس. +**آخر تحديث:** 2026-07-31 +**تم الاختبار باستخدام:** GroupDocs.Search 25.4 +**المؤلف:** GroupDocs -**س4: ما هي بعض المشكلات الشائعة عند استخدام GroupDocs.Search؟** -ج4: تشمل المشكلات الشائعة أنماط regex غير صحيحة لا تُعيد نتائج، وتدهور الأداء في الفهارس الكبيرة جدًا. تحقق من الأنماط وحافظ على تحسين الفهرس. +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` -**س5: أين يمكنني العثور على دروس متقدمة حول GroupDocs.Search؟** -ج5: زر [توثيق GroupDocs](https://docs.groupdocs.com/search/java/) للحصول على أدلة مفصلة وأمثلة. +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` ---- +## دروس ذات صلة -**آخر تحديث:** 2026-02-01 -**تم الاختبار مع:** GroupDocs.Search 25.4 -**المؤلف:** GroupDocs \ No newline at end of file +- [إتقان GroupDocs.Search Java: بحث فعال في المستندات وإدارة الفهرس](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [إتقان GroupDocs.Search Java: دليل البحث الضبابي وفهرسة المستندات](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [كيفية فهرسة النص في Java باستخدام دليل GroupDocs.Search](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/arabic/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/arabic/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..578709bc0 --- /dev/null +++ b/content/arabic/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,278 @@ +--- +date: '2026-07-31' +description: تعرف على كيفية تنفيذ بحث غير حساس لحالة الأحرف في Java عن طريق إضافة + مستندات إلى فهرس باستخدام GroupDocs.Search، مع استخدام استبدال الأحرف لتطبيع النص + أثناء الفهرسة. +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: يتيح لك بحث غير حساس لحالة الأحرف في Java إضافة مستندات إلى فهرس والاستعلام + عنها دون القلق بشأن حالة الحروف. يوضح هذا الدليل كيف يقوم GroupDocs.Search بتطبيع + النص أثناء الفهرسة للحصول على نتائج سريعة وموثوقة. +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: بحث غير حساس لحالة الأحرف في Java – فهرسة المستندات باستخدام GroupDocs +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: إضافة مستندات إلى الفهرس للبحث غير حساس لحالة الأحرف في Java +type: docs +url: /ar/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# إضافة مستندات إلى الفهرس للبحث غير حساس لحالة الأحرف في جافا + +عندما تحتاج إلى **case insensitive search java** التي تجد المعلومات بشكل موثوق بغض النظر عن طريقة كتابة المستخدمين، المفتاح هو إضافة مستندات إلى فهرس مع تطبيع النص. في هذا الدرس نستعرض كيفية تكوين GroupDocs.Search لجافا بحيث يتم تحويل كل مستند تقوم بفهرسته تلقائيًا إلى أحرف صغيرة (أو أي تحويل آخر) أثناء الفهرسة، مما يضمن نتائج غير حساسة لحالة الأحرف دون الحاجة إلى منطق إضافي أثناء الاستعلام. + +## إجابات سريعة +- **ما معنى “add documents to index”؟** يعني تحميل ملفات المصدر إلى بنية بيانات قابلة للبحث بحيث يمكن الاستعلام عنها لاحقًا. +- **لماذا نستخدم استبدال الأحرف؟** إنه يطبع كل حرف — عادةً إلى أحرف صغيرة — بحيث تتجاهل عمليات البحث اختلافات الحالة تلقائيًا. +- **هل أحتاج إلى ترخيص؟** النسخة التجريبية المجانية تعمل للتطوير؛ الترخيص الكامل مطلوب للنشر في بيئات الإنتاج. +- **ما نسخة جافا المطلوبة؟** Java 8 أو أحدث؛ المكتبة تستهدف Java 11+ للحصول على أداء مثالي. +- **هل يمكنني التحويل إلى البحث الحساس لحالة الأحرف عند الحاجة؟** نعم — خيارات البحث تسمح لك بتبديل حساسية الحالة لكل استعلام. + +## ما هو “add documents to index” في GroupDocs.Search؟ + +حمّل ملفات المصدر (PDF، DOCX، TXT، إلخ) إلى فهرس قابل للبحث حتى يتمكن المحرك من استرجاعها بسرعة. إضافة المستندات إلى الفهرس تقوم بتحليل كل ملف، استخراج النص العادي، وتخزينه في بنية بيانات محسّنة تمكّن من عمليات البحث السريعة. + +## لماذا تمكين استبدال الأحرف أثناء الفهرسة؟ + +يقوم استبدال الأحرف بتحويل كل حرف إلى ما يعادله المحدد مسبقًا — غالبًا إلى أحرف صغيرة — أثناء بناء الفهرس. يضمن ذلك أن اختلافات الكتابة، أو العلامات، أو الرموز الخاصة باللغات لا تؤثر على نتائج البحث. من خلال تطبيع النص أثناء الفهرسة، يمكن للمحرك مطابقة الاستعلامات مع مجموعة رموز موحدة، مما يوفر سلوكًا غير حساس لحالة الأحرف سريعًا وموثوقًا دون معالجة إضافية في كل عملية بحث. + +## المتطلبات المسبقة +- **GroupDocs.Search for Java** الإصدار 25.4 أو أحدث (المكتبة تدعم أكثر من 30 تنسيق ملف ويمكنها فهرسة مستندات مئات الصفحات دون تحميل الملف بالكامل إلى الذاكرة). +- **Java Development Kit (JDK)** 8 أو أحدث مثبت. +- إلمام أساسي بـ **Maven** (أو القدرة على إضافة ملفات JAR يدويًا). + +## إعداد GroupDocs.Search لجافا + +### إعداد Maven +أضف مستودع GroupDocs والاعتماد إلى ملف `pom.xml` الخاص بك: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### التحميل المباشر +إذا كنت تفضل عدم استخدام Maven، احصل على أحدث ملف JAR من الموقع الرسمي: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### الحصول على الترخيص +- **Free Trial** – تحميل ترخيص تجريبي للبدء في التجربة. +- **Temporary License** – طلب ترخيص اختبار ممتد من بوابة GroupDocs. +- **Full License** – شراء ترخيص إنتاج عندما تكون مستعدًا للإطلاق. + +### التهيئة الأساسية (إنشاء الفهرس) +المقتطف التالي ينشئ مجلد فهرس ويفعل استبدال الأحرف: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## دليل التنفيذ + +### تمكين استبدال الأحرف في إعدادات الفهرس +تفعيل هذه الميزة يخبر المحرك باستبدال الأحرف أثناء الفهرسة، وهو الخطوة الأساسية للسلوك غير الحساس لحالة الأحرف. + +#### الخطوة 1: تكوين `IndexSettings` +`IndexSettings` هو كائن التكوين الذي يتحكم في كيفية تخزين الفهرس ومعالجة النص. عن طريق ضبط `useCharacterReplacements` إلى **true**، تقوم بتفعيل التحويل التلقائي إلى أحرف صغيرة (أو أي تعيين مخصص تقدمه). + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### تكوين استبدال الأحرف +قم بربط كل حرف بنظيره من الأحرف الصغيرة (أو أي تعيين مخصص تحتاجه). + +#### الخطوة 2: تعريف وإضافة أزواج الاستبدال +قاموس الاستبدال يحتوي على أزواج مثل `'A' → 'a'`، `'É' → 'e'`، إلخ. إضافة هذه الأزواج قبل الفهرسة يضمن تطبيع كل رمز. + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### فهرسة المستندات +الآن بعد أن أصبح الفهرس جاهزًا، يمكنك **add documents to index** من أي مجلد. + +#### الخطوة 3: إضافة مستندات للفهرسة +يقوم GroupDocs.Search بمسح الدليل المستهدف، استخراج النص من كل نوع ملف مدعوم، تطبيق خريطة الاستبدال، وكتابة الرموز إلى تخزين الفهرس. + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### تنفيذ بحث حساس لحالة الأحرف (اختياري) + +#### الخطوة 4: تنفيذ عمليات بحث حساسة لحالة الأحرف +`SearchOptions` يضبط سلوك الاستعلام، مثل تبديل حساسية الحالة، مما يسمح بتحكم دقيق في كيفية تنفيذ عمليات البحث. +`SearchOptions.setUseCaseSensitiveSearch(true)` يجبر المحرك على اعتبار الأحرف الكبيرة والصغيرة متميزة خلال استعلام معين، متجاوزًا السلوك الافتراضي غير الحساس لحالة الأحرف. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## تطبيقات عملية +1. **Marketing Campaigns** – تطبيع أسماء المنتجات حتى يتمكن فرق المبيعات من العثور على الأصول دون القلق بشأن حالة الأحرف. +2. **Customer Support** – تمكين صناديق البحث في مراكز الدعم التي تُرجع المقالة الصحيحة سواء كتب المستخدم “login” أو “Login”. +3. **E‑commerce Catalogs** – ضمان أن المتسوقين يجدون العناصر بغض النظر عن طريقة كتابة عناوين المنتجات، مما يحسن معدلات التحويل. + +## اعتبارات الأداء +- **Organize Source Files** – تنظيم هيكل المجلدات يقلل من الوقت المستغرق في المسح أثناء خطوة **add documents to index**. +- **Monitor Memory** – فهرسة مجموعات نصية كبيرة قد تستهلك ذاكرة RAM كبيرة؛ معالجة الملفات على دفعات من 500 – 1 000 عنصر يحافظ على استهلاك الذاكرة تحت السيطرة. +- **Asynchronous Indexing** – عندما يكون مدعومًا، تشغيل الفهرسة على خيط خلفي للحفاظ على استجابة واجهة المستخدم وتجنب حجب عمليات المستخدم. + +## المشكلات الشائعة وإصلاح الأخطاء +| العَرَض | السبب المحتمل | الحل | +|---------|--------------|-----| +| لم يتم إرجاع أي نتائج لمصطلح معروف | لم يتم تمكين استبدال الأحرف | تحقق من `settings.setUseCharacterReplacements(true)` ومن أن خريطة الاستبدال تحتوي على الأحرف المطلوبة. | +| خطأ نفاد الذاكرة أثناء الفهرسة | فهرسة عدد كبير جدًا من الملفات الكبيرة دفعة واحدة | قم بالفهرسة على دفعات أصغر أو زد حجم ذاكرة JVM (`-Xmx4g`). | +| إرجاع البحث نتائج حساسة لحالة الأحرف بشكل غير متوقع | تم ضبط `SearchOptions.setUseCaseSensitiveSearch(true)` | أزلها أو اضبطها إلى `false` للحصول على السلوك الافتراضي غير الحساس لحالة الأحرف. | +| وقت تحميل الفهرس يتجاوز التوقعات | هيكل المجلد غير فعال أو عدم استخدام SSD | أعد تنظيم الملفات، احذف المستندات غير المستخدمة، وخزن الفهرس على SSD سريع. | +| تم تجاهل الأحرف الخاصة | خريطة الاستبدال تفتقر إلى إدخالات Unicode | أضف تعيينات لأحرف مثل “é”, “ß”, “ø” إلى ما يعادلها المطلوب. | + +## الأسئلة المتكررة + +**س: كيف أتعامل مع الأحرف الخاصة (مثل “é”, “ß”) أثناء الفهرسة؟** +**ج:** تضمين هذه الأحرف في خريطة الاستبدال، وربطها بما يعادلها من ASCII أو تركها دون تغيير بناءً على متطلبات البحث. + +**س: هل يمكنني تقييد استبدال الأحرف بلغة معينة؟** +**ج:** نعم. أنشئ مصفوفة استبدال مخصصة تحتوي فقط على الأحرف الخاصة باللغة المستهدفة قبل إضافتها إلى القاموس. + +**س: ماذا أفعل إذا استغرق تحميل الفهرس وقتًا طويلاً؟** +**ج:** تحسين هيكل المجلدات، إزالة الملفات غير الضرورية، وتخزين الفهرس على SSD عالي السرعة. الفهرسة التزايدية تقلل أيضًا من عبء التحميل. + +**س: هل يمكن إلغاء استبدال الأحرف بعد الفهرسة؟** +**ج:** لا. الاستبدالات مدمجة في البيانات المفهرسة؛ يجب إعادة بناء الفهرس بإعدادات جديدة لتغييرها. + +**س: أين يمكنني العثور على وثائق API أكثر تفصيلًا؟** +**ج:** الوثائق الرسمية ومرجع API يوفران تفاصيل شاملة (انظر الموارد أدناه). + +## الموارد +- [الوثائق](https://docs.groupdocs.com/search/java/) +- [مرجع API](https://reference.groupdocs.com/search/java) +- [تحميل GroupDocs.Search](https://releases.groupdocs.com/search/java/) +- [مستودع GitHub](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [منتدى الدعم المجاني](https://forum.groupdocs.com/c/search/10) +- [معلومات الترخيص المؤقت](https://purchase.groupdocs.com/temporary-license/) + +--- + +**آخر تحديث:** 2026-07-31 +**تم الاختبار مع:** GroupDocs.Search 25.4 لجافا +**المؤلف:** GroupDocs + +## دروس ذات صلة + +- [استبدال الأحرف في GroupDocs.Search Java: دليل شامل لتحسين بحث النص والفهرسة](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [إضافة مستندات إلى الفهرس: بحث جافا حساس لحالة الأحرف مع GroupDocs](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [كيفية إضافة مستندات إلى الفهرس باستخدام GroupDocs.Search لجافا](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/arabic/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/arabic/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..6bb5d3f4f --- /dev/null +++ b/content/arabic/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,301 @@ +--- +date: '2026-07-31' +description: تعلم كيفية إنشاء تسجيل .NET قوي باستخدام GroupDocs من خلال تنفيذ مسجل + console logger مخصص والاستفادة من FileLogger المدمج للمراقبة الفعّالة. +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: تعلم كيفية إنشاء تسجيل .NET قوي باستخدام GroupDocs من خلال تنفيذ مسجل + console logger مخصص والاستفادة من FileLogger المدمج للمراقبة الفعّالة. +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: إنشاء تسجيل .NET قوي باستخدام GroupDocs Console Logger +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: إنشاء تسجيل .NET قوي باستخدام GroupDocs Console Logger +type: docs +url: /ar/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# إنشاء سجل .NET قوي باستخدام مسجل GroupDocs Console + +## مقدمة + +هل تواجه صعوبة في تتبع الأخطاء وعمليات التتبع في تطبيقات .NET الخاصة بك؟ **إنشاء سجل .NET قوي** أمر أساسي لمراقبة الأداء، وتصحيح المشكلات، والحفاظ على تشغيل سلس. يشرح هذا الدليل كيفية بناء مسجل وحدة تحكم مخصص باستخدام GroupDocs.Search بالإضافة إلى إظهار كيفية دمج GroupDocs.Redaction لـ .NET. في النهاية، ستحصل على حل تسجيل شفاف وقابل للصيانة يتناسب تمامًا مع قاعدة الشيفرة الحالية لديك. + +## إجابات سريعة +- **ماذا يفعل المسجل المخصص؟** يكتب سجلات الدخول مباشرة إلى وحدة التحكم لتوفير ملاحظات فورية أثناء التطوير. +- **أي مكون من GroupDocs يوفر تسجيل إلى ملف؟** الفئة المدمجة `FileLogger` تتعامل مع ملفات السجل الدائمة. +- **هل أحتاج إلى ترخيص؟** الترخيص المؤقت يعمل للاختبار؛ الترخيص الكامل مطلوب للإنتاج. +- **ما إصدارات .NET المدعومة؟** .NET Framework 4.5+، .NET Core 3.1+، .NET 5/6/7. +- **هل الحل آمن للمتعدد الخيوط؟** نعم—كل من `ConsoleLogger` و `FileLogger` مصممان للاستخدام المتزامن. + +## ما هو “إنشاء سجل .NET قوي”؟ +**إنشاء سجل .NET قوي** يعني إنشاء خط أنابيب تسجيل موثوق وعالي الأداء يلتقط الأخطاء والتحذيرات والرسائل المعلوماتية عبر جميع طبقات التطبيق. باستخدام GroupDocs، يمكنك تحقيق ذلك باستخدام كل من أهداف وحدة التحكم والملف مع الحفاظ على إعدادات بسيطة. + +## لماذا نستخدم GroupDocs لتسجيل .NET؟ +GroupDocs يدعم **أكثر من 30 منصة .NET** ويمكنه معالجة مستندات تصل إلى **2 GB** دون تأثير ملحوظ على الأداء. واجهات برمجة تطبيقات التسجيل الخاصة به خفيفة الوزن، آمنة للمتعدد الخيوط، وتندمج بسلاسة مع أنماط معالجة الاستثناءات الحالية، مما يمنحك حلاً مثبتًا على مستوى المؤسسات. + +## المتطلبات المسبقة + +- **المكتبات والإصدارات المطلوبة:** GroupDocs.Search لـ .NET و GroupDocs.Redaction لـ .NET (أحدث الإصدارات المتوافقة). +- **إعداد البيئة:** Visual Studio 2022 أو أي بيئة تطوير متوافقة مع .NET. +- **المتطلبات المعرفية:** الإلمام بصياغة C# ومفاهيم التسجيل الأساسية. + +## إعداد GroupDocs.Redaction لـ .NET + +أولاً، أضف GroupDocs.Redaction إلى مشروعك. اختر الطريقة التي تناسب سير عملك أفضل. + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +ابحث عن “GroupDocs.Redaction” وقم بتثبيت أحدث نسخة. + +### الحصول على الترخيص + +للبدء، يمكنك الحصول على ترخيص مؤقت أو شراء ترخيص كامل. سيسمح لك ذلك باستكشاف جميع الميزات دون قيود. زر [الموقع الرسمي لـ GroupDocs](https://purchase.groupdocs.com/temporary-license/) لمزيد من التفاصيل حول الحصول على الترخيص الخاص بك. + +### التهيئة الأساسية والإعداد + +توفر الفئة `Redactor` واجهات برمجة تطبيقات لتعديل وحجب المحتوى في المستندات المدعومة. +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## دليل التنفيذ + +### كيف تنفذ مسجل وحدة تحكم مخصص باستخدام GroupDocs؟ + +حمّل المسجل المخصص الخاص بك بإنشاء مثيل من `ConsoleLogger` وتمريره إلى `SearchOptions` أو أي مكون من GroupDocs يقبل `ILogger`. يقوم المسجل بكتابة كل رسالة إلى `Console.WriteLine`، مما يمنحك رؤية فورية لما تقوم به المكتبة، ويساعدك على اكتشاف المشكلات بسرعة أثناء التطوير. + +الفئة `ConsoleLogger` تنفذ `ILogger` لكتابة رسائل السجل مباشرة إلى وحدة التحكم. +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**الخطوة 1: تعريف مسجل مخصص** +أنشئ فئة جديدة باسم `ConsoleLogger`: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**الخطوة 2: دمج مع GroupDocs.Search** + +`SearchOptions` يضبط سلوك البحث ويقبل `ILogger` للتسجيل. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### ما هو FileLogger ومتى يستخدم؟ + +الفئة `FileLogger` تنفذ `ILogger` وتخزن سجلات الدخول في ملف على القرص، مما يجعلها مثالية لبيئات الإنتاج حيث تتطلب سجلات تدقيق. الفئة `FileLogger` المقدمة من GroupDocs تكتب سجلات الدخول إلى ملف محدد على القرص، مما يجعلها مثالية لبيئات الإنتاج التي تحتاج إلى سجلات تدقيق مستمرة. يمكنك تكوين تدوير السجلات، حدود حجم الملف، ومستويات السجل لتتناسب مع متطلباتك التشغيلية. + +الفئة `FileLogger` تنفذ `ILogger` وتخزن سجلات الدخول في ملف على القرص. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### لماذا تختار GroupDocs لتسجيل .NET؟ + +GroupDocs يقدم ميزة **قابلة للقياس**: يدعم **أكثر من 50 تنسيق إخراج** ويمكنه معالجة **مستندات مئات الصفحات** دون تحميل الملف بالكامل في الذاكرة. تضيف بنية التسجيل الخاصة به أقل من **2 ms** من الحمل لكل سجل، مما يضمن بقاء الأداء مثاليًا حتى تحت حمل ثقيل. + +## تطبيقات عملية + +إليك بعض السيناريوهات العملية التي تتألق فيها تقنيات التسجيل هذه: + +1. **مراقبة التطبيق:** استخدم `ConsoleLogger` أثناء التطوير لرؤية التشخيصات الحية. +2. **سجلات التدقيق:** نشر `FileLogger` للحفاظ على سجلات بمستوى الامتثال للتقارير التنظيمية. +3. **تصحيح الأخطاء:** استفد من رسائل التتبع التفصيلية لتحديد المشكلات في خطوط بحث معقدة. +4. **تحليل الأداء:** فحص طوابع الوقت في السجلات لتحديد الاختناقات وتحسين استخدام الموارد. + +## اعتبارات الأداء + +للحفاظ على سرعة وكفاءة التسجيل: + +- **تقليل تفصيل السجل:** اضبط مستوى المسجل إلى `Info` أو `Warning` في الإنتاج لتجنب عمليات الإدخال/الإخراج الزائدة. +- **استخدام موارد فعال:** قم بتكوين `FileLogger` بحجم ملف أقصى 10 MB وتفعيل التدوير التلقائي. +- **إدارة الذاكرة:** حرر مثيلات المسجل باستخدام كتل `using` أو استدعاءات `Dispose()` الصريحة لتحرير الموارد بسرعة. + +## الأسئلة المتكررة + +**س: هل يمكنني استخدام مسجل وحدة التحكم المخصص في تطبيق متعدد الخيوط؟** +ج: نعم—كل من `ConsoleLogger` و `FileLogger` آمان للمتعدد الخيوط، لذا يمكنك التسجيل من مهام متوازية دون حدوث تعارضات. + +**س: هل أحتاج إلى ترخيص منفصل لـ GroupDocs.Search و GroupDocs.Redaction؟** +ج: ترخيص واحد من GroupDocs يغطي جميع الوحدات، بما في ذلك Search و Redaction، مما يبسط عملية الشراء. + +**س: كيف يمكنني تغيير موقع ملف السجل لـ FileLogger؟** +ج: اضبط خاصية `LogFilePath` عند إنشاء مثيل `FileLogger`، مثلاً `new FileLogger("C:\\Logs\\app.log")`. + +**س: ما هي مستويات السجل التي يدعمها GroupDocs؟** +ج: المكتبة توفر مستويات `Debug`، `Info`، `Warning`، `Error`، و `Critical`، مما يسمح بتحكم دقيق في المخرجات. + +**س: هل يمكن الجمع بين تسجيل وحدة التحكم والملف في آنٍ واحد؟** +ج: بالتأكيد—أنشئ مسجلًا مركبًا يرسل الرسائل إلى كل من `ConsoleLogger` و `FileLogger` للحصول على رؤية مزدوجة. + +## الموارد + +- [توثيق GroupDocs Redaction](https://docs.groupdocs.com/search/net/) +- [مرجع API](https://reference.groupdocs.com/redaction/net) +- [تحميل مكتبات GroupDocs](https://releases.groupdocs.com/search/net/) +- [منتدى الدعم المجاني](https://forum.groupdocs.com/c/search/10) +- [الحصول على ترخيص مؤقت](https://purchase.groupdocs.com/temporary-license/) + +## الخلاصة + +في هذا الدليل، أظهرنا كيفية **إنشاء سجل .NET قوي** من خلال بناء مسجل وحدة تحكم مخصص والاستفادة من `FileLogger` المدمج في GroupDocs. توفر لك هذه الأدوات رؤية فورية أثناء التطوير وسجلات موثوقة ومستمرة للإنتاج. استكشف تكوينات مستويات السجل المختلفة، وجرب المسجلات المركبة، ودمج الحل في خدمات أكبر للحصول على مراقبة شاملة عبر جميع الطبقات. + +**الخطوات التالية** + +- اختبر إعدادات مستويات السجل المختلفة للعثور على التوازن المثالي بين التفصيل والأداء. +- أضف تسجيلًا منظمًا (إخراج JSON) إلى `FileLogger` لتسهيل استيعابه في منصات تحليل السجلات. +- استكشف الوحدات الأخرى لـ GroupDocs، مثل Search و Annotation، لتوسيع خط أنابيب معالجة المستندات الخاص بك. + +**آخر تحديث:** 2026-07-31 +**تم الاختبار مع:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**المؤلف:** GroupDocs + +## دروس ذات صلة + +- [دروس معالجة الاستثناءات والتسجيل لـ GroupDocs.Search .NET](/search/net/exception-handling-logging/) +- [تنفيذ GroupDocs.Search و Redaction في .NET لإدارة المستندات](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [إتقان GroupDocs Search و Redaction في .NET: إدارة مستندات متقدمة](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/chinese/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/chinese/java/searching/groupdocs-search-java-regex-tutorial/_index.md new file mode 100644 index 000000000..5c778cfbf --- /dev/null +++ b/content/chinese/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -0,0 +1,230 @@ +--- +date: '2026-07-31' +description: 了解如何使用 GroupDocs.Search 在 Java 中进行正则搜索。本分步教程展示了设置、索引创建以及正则查询示例,以实现快速的文本文档分析。 +keywords: +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: 使用 GroupDocs.Search 在 Java 中进行正则搜索,可在 PDF、Word 和文本文件中实现快速模式匹配。按照本指南进行设置、索引文档并运行强大的正则查询。 +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: 使用 GroupDocs.Search 在 Java 中进行正则搜索的指南 +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: 使用 GroupDocs.Search 在 Java 中进行正则搜索的指南 +type: docs +url: /zh/java/searching/groupdocs-search-java-regex-tutorial/ +weight: 1 +--- + +# 如何在 Java 中使用 GroupDocs.Search 进行正则搜索 + +在成千上万的文本文件中搜索可能像在大海捞针一样。**如何进行正则搜索** 在 Java 中变得轻而易举,只需将语言强大的正则表达式引擎与 GroupDocs.Search 结合使用,该库会构建索引以实现闪电般快速的模式匹配。接下来几分钟,你将看到如何安装库、创建索引、添加文件,以及运行简单的基于文本和面向对象的正则查询。结束时,你将能够在任何 Java 应用程序中嵌入强大的模式匹配搜索。 + +## 快速答案 +- **主要库是什么?** GroupDocs.Search for Java +- **如何开始?** 添加 Maven 依赖并实例化 `Index` 对象 +- **我可以使用正则过滤内容吗?** 是的 – 在内容过滤场景中使用正则查询 +- **我需要许可证吗?** 生产使用需要免费试用或临时许可证 +- **支持哪个 JDK 版本?** Java 8 或更高 + +## 什么是正则搜索? +正则搜索让你能够一次性在众多文件中定位日期、电子邮件地址或重复字符等模式。它将普通文本查询转化为强大的基于规则的扫描器,能够即时提取或屏蔽内容。 + +## 为什么在正则搜索中使用 GroupDocs.Search? +GroupDocs.Search 只需对文档建立一次索引,随后在每次查询时复用该索引,提供 **最高 10 倍更快** 的搜索速度,相比原始文件扫描更高效。该库支持 **30 多种文件格式**(PDF、DOCX、XLSX、PPTX、TXT、HTML 等),并且能够在不将整个文件加载到内存的情况下处理数百页的文件。 + +## 先决条件 +- Java 开发工具包 (JDK) 8 或更高 +- Maven 用于依赖管理 +- 基本了解 Java 正则表达式 + +### 所需库和依赖 +将 GroupDocs.Search 添加到你的 Maven 项目中: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +或者,从 [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/) 下载最新的 JAR 包。 + +### 许可证获取 +从 [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) 获取免费试用或临时许可证,并在应用启动时加载。 + +## 为 Java 设置 GroupDocs.Search + +### 安装信息 +1. **Maven 集成:** 将上面显示的仓库和依赖添加到你的 `pom.xml`。 +2. **直接下载:** 将 JAR 文件放置在项目的类路径中。 +3. **许可证应用:** 在应用启动时加载许可证文件。 + +```java +import com.groupdocs.search.*; + +public class SearchSetup { + public static void main(String[] args) { + // Initialize the index by specifying a directory. + String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; + Index index = new Index(indexFolder); + + System.out.println("Index created successfully at: " + indexFolder); + } +} +``` + +## 核心组件 +`Index` 类是核心组件,负责存储从文档中提取的可搜索标记。它能够在不重新读取原始文件的情况下快速查找任何词汇或模式。 + +## 如何创建索引 +创建索引非常简单:实例化 `Index` 类并提供一个用于存放索引文件的文件夹路径。构造函数在首次使用时会创建必要的数据库文件,并为添加和搜索文档做好准备。创建后,可在所有查询中复用同一索引。 + +```java +String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; +Index index = new Index(indexFolder); +``` + +## 如何添加文档 +要使文件可搜索,只需使用指向文件路径的 `Document`(或 `DocumentInfo`)实例调用 `index.add`。库会解析内容、提取标记并将其存入索引。此操作可对单个文件或批量文件执行,更新会以增量方式合并。 + +```java +index.add("YOUR_DOCUMENT_DIRECTORY"); +system.out.println("Documents added to the index."); +``` + +## 如何以文本形式执行正则表达式搜索 +`RegexQuery` 定义了一种基于正则表达式的搜索查询。使用纯文本模式加载 `RegexQuery`,并将其传递给 `Index` 的 `search` 方法。引擎会在索引标记上评估该模式并返回匹配的文档引用,使一次性查找既快速又简便。 + +```java +String query1 = "^((.)\\2{1,})"; +``` + +## 如何以对象形式执行正则表达式搜索 +`RegexQuery` 也可以构建为对象,并在多次搜索中复用。先定义一次查询,配置如不区分大小写或模糊匹配等选项,然后重复调用 `index.search`。当相同模式应用于多个文档集时,此方式可提升性能。 + +```java +SearchResult result1 = index.search(query1); +system.out.println("Number of occurrences found: " + result1.getDocumentCount()); +``` + +## 内容过滤正则使用案例 +你可以使用正则自动屏蔽或标记符合特定模式的内容,例如: + +- 检测重复字符以进行垃圾邮件过滤 +- 查找类似信用卡的序列以进行数据隐私检查 +- 提取日期或 ID 以供下游处理 + +## 实际应用 +1. **文档管理系统:** 通过模式(例如发票号码)定位合同、发票或政策。 +2. **内容审核:** 在论坛或聊天应用中使用正则规则审核用户生成的文本。 +3. **数据提取:** 从非结构化的 PDF 或 Word 文件中提取结构化数据,如订单号。 + +## 性能考虑因素 +- **索引更新:** 每当源文件更改时调用 `index.add` 以保持结果最新。 +- **内存管理:** 对于超过 100 万文档的语料库,启用增量索引以控制堆内存使用。 +- **正则设计:** 保持模式简洁;例如 `\d{4}-\d{2}-\d{2}` 的运行速度是通配符密集表达式 `.*` 的 3 倍。 + +## 结论 +你现在已经了解 **如何进行正则搜索** 在 Java 中使用 GroupDocs.Search,从安装库、创建索引到执行基于文本和面向对象的查询。这些技术让你能够在任何 Java 应用程序中添加快速、具备模式感知的搜索,无论是构建文档门户、合规扫描器还是数据挖掘流水线。 + +## 常见问题 + +**Q:** 在 GroupDocs.Search 中,基于文本的正则查询与基于对象的正则查询有什么区别? +**A:** 基于文本的查询是快速的一行代码,而基于对象的查询提供可复用、类型安全的定义,可存储并在多次搜索中重复使用。 + +**Q:** GroupDocs.Search 能否索引非文本文件,如 PDF 或 Excel 文件? +**A:** 能,库会从 PDF、DOCX、XLSX、PPTX 等超过 30 种格式中提取可搜索的文本。 + +**Q:** 添加新文件后,如何更新已有的搜索索引? +**A:** 使用新或已修改的文档调用 `index.add`;库会合并更改而无需重新构建整个索引。 + +**Q:** 使用正则与 GroupDocs.Search 时常见的陷阱有哪些? +**A:** 过于宽泛的模式(例如 `.*`)会导致性能下降,且错误的表达式可能得不到任何结果。请始终先在样本集上测试模式。 + +**Q:** 在哪里可以找到更高级的 GroupDocs.Search 教程? +**A:** 访问 [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) 获取深入指南、API 参考和示例项目。 + +--- + +**Last Updated:** 2026-07-31 +**Tested With:** GroupDocs.Search 25.4 +**Author:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## 相关教程 + +- [精通 GroupDocs.Search Java:高效文档搜索与索引管理](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [精通 GroupDocs.Search Java:模糊搜索与文档索引指南](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [如何在 Java 中使用 GroupDocs.Search 索引文本指南](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/chinese/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/chinese/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..19aeda60b --- /dev/null +++ b/content/chinese/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,273 @@ +--- +date: '2026-07-31' +description: 了解如何通过使用 GroupDocs.Search 将文档添加到索引,并使用字符替换在索引期间规范化文本,以实现 case insensitive + search java。 +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: Case insensitive search java 允许您将文档添加到索引并进行查询,而无需担心字母大小写。本指南展示了 GroupDocs.Search + 如何在索引期间规范化文本,以实现快速、可靠的结果。 +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Case Insensitive Search Java – 使用 GroupDocs 索引文档 +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: 在 Java 中将文档添加到索引以实现 Case‑Insensitive Search +type: docs +url: /zh/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +## 快速答案 +- **“add documents to index” 是什么意思?** 它指将源文件加载到可搜索的数据结构中,以便以后进行查询。 +- **为什么使用字符替换?** 它会对每个字符进行规范化——通常转换为小写——从而使搜索自动忽略大小写差异。 +- **我需要许可证吗?** 免费试用可用于开发;生产部署需要完整许可证。 +- **需要哪个 Java 版本?** Java 8 或更高版本;该库针对 Java 11+ 以获得最佳性能。 +- **需要时可以切换为区分大小写的搜索吗?** 可以——搜索选项允许您在每个查询中切换大小写敏感性。 + +## 在 GroupDocs.Search 中,“add documents to index” 是什么? +将您的源文件(PDF、DOCX、TXT 等)加载到可搜索的索引中,以便引擎能够快速检索。将文档添加到索引会解析每个文件,提取纯文本,并将其存储在优化的数据结构中,从而实现快速查找。 + +## 为什么在索引期间启用字符替换? +字符替换在构建索引时将每个字符转换为预定义的等价字符——最常见的是小写。这样可以确保大小写、变音符或特定语言符号的差异不会影响搜索结果。通过在索引时对文本进行规范化,引擎能够在一致的标记集合上匹配查询,提供快速、可靠的不区分大小写行为,而无需在每次搜索时进行额外处理。 + +## 前置条件 +- **GroupDocs.Search for Java** 版本 25.4 或更新(库支持 30 多种文件格式,能够在不将整个文件加载到内存的情况下索引数百页的文档)。 +- **Java Development Kit (JDK)** 8 或更高版本已安装。 +- 基本了解 **Maven**(或能够手动添加 JAR)。 + +## 为 Java 设置 GroupDocs.Search + +### Maven 设置 +将 GroupDocs 仓库和依赖添加到您的 `pom.xml` 中: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### 直接下载 +如果您不想使用 Maven,可从官方网站获取最新 JAR: [GroupDocs.Search for Java 发布](https://releases.groupdocs.com/search/java/)。 + +### 许可证获取 +- **免费试用** – 下载试用许可证以开始实验。 +- **临时许可证** – 从 GroupDocs 门户请求延长的测试许可证。 +- **完整许可证** – 当您准备上线时购买生产许可证。 + +### 基本初始化(创建索引) +以下代码片段创建索引文件夹并启用字符替换: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## 实施指南 + +### 在索引设置中启用字符替换 +激活此功能会告诉引擎在索引时替换字符,这是实现不区分大小写行为的核心步骤。 + +#### 步骤 1:配置 `IndexSettings` +`IndexSettings` 是控制索引如何存储和处理文本的配置对象。将 `useCharacterReplacements` 设置为 **true** 即可开启自动小写(或您提供的任何自定义映射)。 + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### 配置字符替换 +将每个字符映射到其小写对应字符(或您需要的任何自定义映射)。 + +#### 步骤 2:定义并添加替换对 +替换字典保存诸如 `'A' → 'a'`、`'É' → 'e'` 等对。将在索引前添加这些对,以确保每个标记都已规范化。 + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### 索引文档 +现在索引已准备就绪,您可以从任意文件夹 **add documents to index**。 + +#### 步骤 3:添加文档进行索引 +GroupDocs.Search 扫描目标目录,从每种受支持的文件类型中提取文本,应用替换映射,并将标记写入索引存储。 + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### 执行区分大小写的搜索(可选) + +#### 步骤 4:执行区分大小写的搜索 +`SearchOptions` 配置查询行为,例如切换大小写敏感性,允许对搜索执行方式进行细粒度控制。 +`SearchOptions.setUseCaseSensitiveSearch(true)` 强制引擎在特定查询期间将大小写字符视为不同,从而覆盖默认的不区分大小写行为。 + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## 实际应用 +1. **营销活动** – 规范化产品名称,使销售团队能够在不考虑大小写的情况下定位资产。 +2. **客户支持** – 为帮助台搜索框提供动力,无论用户输入 “login” 还是 “Login”,都能返回正确的文章。 +3. **电子商务目录** – 确保购物者无论如何输入产品标题都能找到商品,提高转化率。 + +## 性能考虑因素 +- **组织源文件** – 整洁的文件夹层次结构可减少在 **add documents to index** 步骤中扫描所花费的时间。 +- **监控内存** – 索引大型语料库可能消耗大量内存;将文件分批(每批 500 – 1 000 项)处理可保持堆内存使用在可控范围。 +- **异步索引** – 若支持,可在后台线程运行索引,以保持 UI 响应并避免阻塞用户操作。 + +## 常见问题与故障排除 + +| 症状 | 可能原因 | 解决方案 | +|---------|--------------|-----| +| 已知词汇未返回结果 | 未启用字符替换 | 验证 `settings.setUseCharacterReplacements(true)` 并确保替换映射包含所需字符。 | +| 索引期间出现内存不足错误 | 一次索引过多大型文件 | 将文件分成更小批次索引或增加 JVM 堆内存(`-Xmx4g`)。 | +| 搜索意外返回区分大小写的结果 | `SearchOptions.setUseCaseSensitiveSearch(true)` 被设置 | 移除或设为 `false` 以恢复默认的不区分大小写行为。 | +| 索引加载时间超出预期 | 文件夹布局低效或未使用 SSD | 重新组织文件,清理未使用的文档,并将索引存储在高速 SSD 上。 | +| 特殊字符被忽略 | 替换映射缺少 Unicode 条目 | 为诸如 “é”、 “ß”、 “ø” 等字符添加映射到所需等价字符。 | + +## 常见问答 + +**问:在索引期间如何处理特殊字符(例如 “é”、 “ß”)?** +**答:** 将这些字符包含在替换映射中,映射到它们的 ASCII 等价字符,或根据搜索需求保持不变。 + +**问:我可以将字符替换限制在特定语言吗?** +**答:** 可以。在将其添加到字典之前,构建仅包含目标语言字符的自定义替换数组。 + +**问:如果索引加载时间过长该怎么办?** +**答:** 优化文件夹结构,删除不必要的文件,并将索引存储在高速 SSD 上。增量索引也可降低加载开销。 + +**问:索引后能否撤销字符替换?** +**答:** 不能。替换已嵌入索引数据中;若要更改必须使用新设置重新构建索引。 + +**问:在哪里可以找到更详细的 API 文档?** +**答:** 官方文档和 API 参考提供了详尽的细节(见下方资源)。 + +## 资源 +- [文档](https://docs.groupdocs.com/search/java/) +- [API 参考](https://reference.groupdocs.com/search/java) +- [下载 GroupDocs.Search](https://releases.groupdocs.com/search/java/) +- [GitHub 仓库](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [免费支持论坛](https://forum.groupdocs.com/c/search/10) +- [临时许可证信息](https://purchase.groupdocs.com/temporary-license/) + +--- + +**最后更新:** 2026-07-31 +**测试环境:** GroupDocs.Search 25.4 for Java +**作者:** GroupDocs + +--- + +## 相关教程 + +- [GroupDocs.Search Java 中的字符替换:提升文本搜索和索引的综合指南](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [将文档添加到索引:使用 GroupDocs 的区分大小写 Java 搜索](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [如何使用 GroupDocs.Search for Java 将文档添加到索引](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/chinese/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/chinese/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..ea8d0c900 --- /dev/null +++ b/content/chinese/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,301 @@ +--- +date: '2026-07-31' +description: 了解如何通过实现自定义控制台记录器并利用内置的 FileLogger,使用 GroupDocs 创建强大的 .NET 日志记录,以实现有效的监控。 +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: 了解如何通过实现自定义控制台记录器并利用内置的 FileLogger,使用 GroupDocs 创建强大的 .NET 日志记录,以实现有效的监控。 +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: 使用 GroupDocs Console Logger 创建强大的 .NET 日志记录 +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: 使用 GroupDocs Console Logger 创建强大的 .NET 日志记录 +type: docs +url: /zh/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# 创建强大的 .NET 日志记录与 GroupDocs 控制台记录器 + +## 介绍 + +您是否在跟踪 .NET 应用程序中的错误和操作跟踪时感到困难?**创建强大的 .NET 日志记录** 对于监控性能、调试问题以及保持平稳运行至关重要。本教程将指导您使用 GroupDocs.Search 构建自定义控制台记录器,并展示如何集成 GroupDocs.Redaction for .NET。完成后,您将拥有一个透明、易于维护的日志解决方案,能够无缝融入现有代码库。 + +## 快速答案 +- **自定义记录器的作用是什么?** 将日志条目直接写入控制台,以便在开发期间即时反馈。 +- **哪个 GroupDocs 组件提供文件日志记录?** 内置的 `FileLogger` 类处理持久化日志文件。 +- **我需要许可证吗?** 临时许可证可用于测试;生产环境需要完整许可证。 +- **支持哪些 .NET 版本?** .NET Framework 4.5+、.NET Core 3.1+、.NET 5/6/7。 +- **解决方案是线程安全的吗?** 是的——`ConsoleLogger` 和 `FileLogger` 都设计为可并发使用。 + +## 什么是“创建强大的 .NET 日志记录”? +**创建强大的 .NET 日志记录** 意味着建立一个可靠的、高性能的日志管道,捕获应用程序各层的错误、警告和信息性消息。使用 GroupDocs,您可以通过控制台和文件目标实现此目标,同时保持配置简洁。 + +## 为什么在 .NET 日志记录中使用 GroupDocs? +GroupDocs 支持 **30+ .NET 平台**,并且能够处理高达 **2 GB** 的文档而不会出现明显的性能下降。其日志 API 轻量级、线程安全,并能无缝集成到现有的异常处理模式中,为您提供经验证的企业级解决方案。 + +## 先决条件 + +- **必需的库和版本:** GroupDocs.Search for .NET 和 GroupDocs.Redaction for .NET(最新兼容版本)。 +- **环境设置:** Visual Studio 2022 或任何兼容 .NET 的 IDE。 +- **知识先决条件:** 熟悉 C# 语法和基本的日志概念。 + +## 为 .NET 设置 GroupDocs.Redaction + +首先,将 GroupDocs.Redaction 添加到您的项目中。选择最适合您工作流的方法。 + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet 包管理器 UI** +搜索 “GroupDocs.Redaction” 并安装最新版本。 + +### 许可证获取 + +要开始使用,您可以获取临时许可证或购买完整许可证。这将允许您无限制地探索所有功能。访问 [GroupDocs 官方网站](https://purchase.groupdocs.com/temporary-license/) 获取有关获取许可证的更多详细信息。 + +### 基本初始化和设置 + +`Redactor` 类提供 API 来修改和编辑受支持文档中的内容。 +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## 实现指南 + +### 如何使用 GroupDocs 实现自定义控制台记录器? + +通过创建 `ConsoleLogger` 实例并将其传递给 `SearchOptions` 或任何接受 `ILogger` 的 GroupDocs 组件来加载自定义记录器。记录器将每条消息写入 `Console.WriteLine`,让您实时了解库的运行情况,并帮助您在开发期间快速发现问题。 + +`ConsoleLogger` 类实现 `ILogger`,以将日志消息直接写入控制台。 +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**步骤 1:定义您的自定义记录器** +创建一个名为 `ConsoleLogger` 的新类: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**步骤 2:与 GroupDocs.Search 集成** + +`SearchOptions` 配置搜索行为并接受 `ILogger` 用于日志记录。 +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### FileLogger 是什么以及何时使用? + +`FileLogger` 类实现 `ILogger`,并将日志条目持久化到磁盘文件中,非常适合需要审计跟踪的生产环境。GroupDocs 提供的 `FileLogger` 将日志写入指定的磁盘文件,适用于需要持久审计跟踪的生产环境。您可以配置日志轮转、文件大小限制和日志级别,以满足运营需求。 + +`FileLogger` 类实现 `ILogger`,并将日志条目持久化到磁盘文件。 +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### 为什么选择 GroupDocs 进行 .NET 日志记录? + +GroupDocs 提供了 **可量化** 的优势:支持 **50 多种输出格式**,并且能够处理 **数百页的文档** 而无需将整个文件加载到内存中。其日志基础设施每条日志的开销不足 **2 ms**,即使在高负载下也能保持性能最佳。 + +## 实际应用 + +以下是这些日志技术发挥作用的实际场景: + +1. **应用程序监控:** 在开发期间使用 `ConsoleLogger` 查看实时诊断。 +2. **审计跟踪:** 部署 `FileLogger` 以维护符合合规要求的日志,用于监管报告。 +3. **调试:** 利用详细的跟踪消息定位复杂搜索管道中的问题。 +4. **性能分析:** 检查日志时间戳以识别瓶颈并优化资源使用。 + +## 性能考虑因素 + +为了保持日志记录快速高效: + +- **限制日志冗余度:** 在生产环境中将记录器级别设置为 `Info` 或 `Warning`,以避免过多的 I/O。 +- **高效资源使用:** 将 `FileLogger` 配置为最大文件大小 10 MB 并启用自动轮转。 +- **内存管理:** 使用 `using` 块或显式的 `Dispose()` 调用来释放记录器实例,以及时释放资源。 + +## 常见问题 + +**Q: 我可以在多线程应用程序中使用自定义控制台记录器吗?** +A: 是的——`ConsoleLogger` 和 `FileLogger` 都是线程安全的,您可以在并行任务中记录而不会出现竞争条件。 + +**Q: 我需要为 GroupDocs.Search 和 GroupDocs.Redaction 单独购买许可证吗?** +A: 单一的 GroupDocs 许可证覆盖所有模块,包括 Search 和 Redaction,简化采购流程。 + +**Q: 如何更改 FileLogger 的日志文件位置?** +A: 在构造 `FileLogger` 实例时设置 `LogFilePath` 属性,例如 `new FileLogger("C:\\Logs\\app.log")`。 + +**Q: GroupDocs 支持哪些日志级别?** +A: 库提供 `Debug`、`Info`、`Warning`、`Error` 和 `Critical` 级别,允许对输出进行细粒度控制。 + +**Q: 能否同时使用控制台和文件日志记录?** +A: 完全可以——创建一个复合记录器,将消息同时转发到 `ConsoleLogger` 和 `FileLogger`,实现双重可视化。 + +## 资源 + +- [GroupDocs Redaction 文档](https://docs.groupdocs.com/search/net/) +- [API 参考](https://reference.groupdocs.com/redaction/net) +- [下载 GroupDocs 库](https://releases.groupdocs.com/search/net/) +- [免费支持论坛](https://forum.groupdocs.com/c/search/10) +- [临时许可证获取](https://purchase.groupdocs.com/temporary-license/) + +## 结论 + +在本指南中,我们展示了如何通过构建自定义控制台记录器并利用 GroupDocs 内置的 `FileLogger` 来**创建强大的 .NET 日志记录**。这些工具在开发期间提供实时洞察,在生产环境中提供可靠的持久日志。探索不同的日志级别配置,尝试复合记录器,并将解决方案集成到更大的服务中,以实现全栈可观测性。 + +**下一步** + +- 测试不同的日志级别设置,以在细节和性能之间找到最佳平衡。 +- 为 `FileLogger` 添加结构化日志(JSON 输出),以便更容易导入日志分析平台。 +- 探索 GroupDocs 的其他模块,如 Search 和 Annotation,以扩展您的文档处理管道。 + +--- + +**最后更新:** 2026-07-31 +**测试环境:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**作者:** GroupDocs + +## 相关教程 + +- [GroupDocs.Search .NET 异常处理和日志记录教程](/search/net/exception-handling-logging/) +- [.NET 文档管理中实现 GroupDocs.Search 和 Redaction](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [精通 GroupDocs Search 和 Redaction 在 .NET 中的高级文档管理](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/czech/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/czech/java/searching/groupdocs-search-java-regex-tutorial/_index.md new file mode 100644 index 000000000..2866ace15 --- /dev/null +++ b/content/czech/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -0,0 +1,234 @@ +--- +date: '2026-07-31' +description: Naučte se, jak provádět regexové vyhledávání v Javě pomocí GroupDocs.Search. + Tento podrobný návod ukazuje nastavení, vytvoření indexu a příklady regexových dotazů + pro rychlou analýzu textových dokumentů. +keywords: +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: Regexové vyhledávání v Javě pomocí GroupDocs.Search umožňuje rychlé + vyhledávání vzorů v PDF, Word a textových souborech. Postupujte podle tohoto průvodce, + nastavte indexování dokumentů a spouštějte výkonné regexové dotazy. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: Jak provádět regexové vyhledávání v Javě s průvodcem GroupDocs.Search +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: Jak provádět regexové vyhledávání v Javě s průvodcem GroupDocs.Search +type: docs +url: /cs/java/searching/groupdocs-search-java-regex-tutorial/ +weight: 1 +--- + +# Jak provádět regex vyhledávání v Javě s GroupDocs.Search + +Searching through thousands of text documents can feel like looking for a needle in a haystack. **How to regex search** in Java becomes effortless when you pair the language’s powerful regular‑expression engine with GroupDocs.Search, a library that builds an index for lightning‑fast pattern matching. In the next few minutes you’ll see how to install the library, create an index, add files, and run both simple text‑based and object‑oriented regex queries. By the end you’ll be ready to embed robust pattern‑matching search into any Java application. + +## Rychlé odpovědi +- **Jaká je hlavní knihovna?** GroupDocs.Search for Java +- **Jak začít?** Přidejte Maven závislost a vytvořte objekt `Index` +- **Mohu filtrovat obsah pomocí regexu?** Ano – použijte regex dotazy pro scénáře filtrování obsahu +- **Potřebuji licenci?** Pro produkční použití je vyžadována bezplatná zkušební verze nebo dočasná licence +- **Jaká verze JDK je podporována?** Java 8 nebo vyšší + +## Co je regex vyhledávání? +Regex vyhledávání vám umožňuje najít vzory, jako jsou data, e‑mailové adresy nebo opakující se znaky, napříč mnoha soubory v jedné operaci. Přemění dotaz v prostém textu na výkonný, pravidly řízený skener, který může za běhu extrahovat nebo blokovat obsah. + +## Proč použít GroupDocs.Search pro regex vyhledávání? +GroupDocs.Search indexuje dokumenty jednou a poté tento index používá pro každý dotaz, což poskytuje **až 10× rychlejší** vyhledávání ve srovnání s přímým skenováním souborů. Knihovna podporuje **více než 30 formátů souborů** (PDF, DOCX, XLSX, PPTX, TXT, HTML a další) a dokáže zpracovat soubory o stovkách stránek, aniž by načítala celý soubor do paměti. + +## Předpoklady +- Java Development Kit (JDK) 8 nebo vyšší +- Maven pro správu závislostí +- Základní znalost regulárních výrazů v Javě + +### Požadované knihovny a závislosti +Add GroupDocs.Search to your Maven project: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +Alternatively, download the latest JAR from [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Získání licence +Obtain a free trial or temporary license from [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) and load it at application start‑up. + +## Nastavení GroupDocs.Search pro Javu + +### Informace o instalaci +1. **Integrace s Maven:** Přidejte repozitář a závislost uvedenou výše do svého `pom.xml`. +2. **Přímé stažení:** Umístěte soubory JAR do classpath vašeho projektu. +3. **Aplikace licence:** Načtěte soubor licence při spuštění aplikace. + +```java +import com.groupdocs.search.*; + +public class SearchSetup { + public static void main(String[] args) { + // Initialize the index by specifying a directory. + String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; + Index index = new Index(indexFolder); + + System.out.println("Index created successfully at: " + indexFolder); + } +} +``` + +## Hlavní komponenty +`Index` třída je hlavní komponenta, která ukládá prohledávatelné tokeny extrahované z vašich dokumentů. Umožňuje rychlé vyhledání jakéhokoli termínu nebo vzoru bez nutnosti opětovného čtení původních souborů. + +## Jak vytvořit index +Vytvoření indexu je jednoduché: vytvořte instanci třídy `Index` s cestou ke složce, kde budou uloženy soubory indexu. Konstruktor při prvním použití vytvoří potřebné databázové soubory a připraví engine pro přidávání a vyhledávání dokumentů. Po vytvoření použijte stejný index pro všechny dotazy. + +```java +String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; +Index index = new Index(indexFolder); +``` + +## Jak přidat dokumenty +Aby byl soubor prohledávatelný, zavolejte `index.add` s instancí `Document` (nebo `DocumentInfo`), která ukazuje na cestu souboru. Knihovna parsuje obsah, extrahuje tokeny a uloží je do indexu. Tuto operaci lze provést pro jednotlivé soubory nebo dávky a aktualizace se sloučí inkrementálně. + +```java +index.add("YOUR_DOCUMENT_DIRECTORY"); +system.out.println("Documents added to the index."); +``` + +## Jak provést vyhledávání regulárním výrazem v textové podobě +`RegexQuery` definuje vyhledávací dotaz založený na regulárním výrazu. Načtěte `RegexQuery` s textovým vzorem a předávejte jej metodě `search` třídy `Index`. Engine vyhodnotí vzor vůči indexovaným tokenům a vrátí odpovídající reference na dokumenty, což umožňuje rychlé a jednoduché jednorázové vyhledávání. + +```java +String query1 = "^((.)\\2{1,})"; +``` + +## Jak provést vyhledávání regulárním výrazem v objektové podobě +`RegexQuery` lze také vytvořit jako objekt a znovu použít v několika vyhledáváních. Definujte dotaz jednou, nastavte možnosti jako neberení v úvahu velikosti písmen nebo fuzzy shodu a opakovaně volajte `index.search`. Tento přístup zlepšuje výkon, když je stejný vzor aplikován na mnoho různých sad dokumentů. + +```java +SearchResult result1 = index.search(query1); +system.out.println("Number of occurrences found: " + result1.getDocumentCount()); +``` + +## Případy použití regexu pro filtrování obsahu +Můžete použít regex k automatickému blokování nebo označování obsahu, který odpovídá určitým vzorům, například: + +- Detekce opakujících se znaků pro filtrování spamu +- Vyhledávání sekvencí podobných kreditním kartám pro kontrolu ochrany dat +- Extrahování dat nebo ID pro následné zpracování + +## Praktické aplikace +1. **Systémy pro správu dokumentů:** Vyhledávejte smlouvy, faktury nebo zásady podle vzoru (např. čísla faktur). +2. **Moderování obsahu:** Použijte regex pravidla k moderaci uživatelského textu ve fórech nebo chatovacích aplikacích. +3. **Extrahování dat:** Získejte strukturovaná data, jako jsou čísla objednávek, z nestrukturovaných PDF nebo Word souborů. + +## Úvahy o výkonu +- **Aktualizace indexu:** Zavolejte `index.add` kdykoli se změní zdrojové soubory, aby byly výsledky aktuální. +- **Správa paměti:** Pro korpusy přesahující 1 milion dokumentů povolte inkrementální indexování, aby byl využití haldy pod kontrolou. +- **Návrh regexu:** Udržujte vzory stručné; vzor jako `\d{4}-\d{2}-\d{2}` běží 3× rychleji než výraz s mnoha zástupnými znaky jako `.*`. + +## Závěr +Nyní víte, **jak provádět regex vyhledávání** v Javě pomocí GroupDocs.Search, od instalace knihovny a vytvoření indexu až po provádění jak textových, tak objektově orientovaných dotazů. Tyto techniky vám umožní přidat rychlé, vzorově orientované vyhledávání do jakékoli Java aplikace, ať už vytváříte dokumentový portál, kontrolní skener nebo datový těžební řetězec. + +## Často kladené otázky + +**Q:** Jaký je rozdíl mezi textovými a objektovými regex dotazy v GroupDocs.Search? +**A:** Textové dotazy jsou rychlé jednorázové, zatímco objektové dotazy poskytují znovupoužitelné, typově bezpečné definice, které lze uložit a znovu použít v několika vyhledáváních. + +**Q:** Může GroupDocs.Search indexovat netextové dokumenty, jako jsou PDF nebo Excel soubory? +**A:** Ano, knihovna extrahuje prohledávatelný text z PDF, DOCX, XLSX, PPTX a více než 30 dalších formátů. + +**Q:** Jak aktualizovat existující vyhledávací index po přidání nových souborů? +**A:** Zavolejte `index.add` s novými nebo upravenými dokumenty; knihovna sloučí změny bez nutnosti přestavovat celý index. + +**Q:** Jaké jsou běžné úskalí při používání regexu s GroupDocs.Search? +**A:** Příliš široké vzory (např. `.*`) mohou způsobit pokles výkonu a špatně vytvořené výrazy mohou vracet žádné výsledky. Vždy nejprve testujte vzory na vzorku dat. + +**Q:** Kde najdu pokročilejší tutoriály k GroupDocs.Search? +**A:** Navštivte [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) pro podrobné návody, referenční API a ukázkové projekty. + +--- + +**Poslední aktualizace:** 2026-07-31 +**Testováno s:** GroupDocs.Search 25.4 +**Autor:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## Související tutoriály + +- [Mistrovství GroupDocs.Search Java: Efektivní vyhledávání dokumentů a správa indexu](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [Mistrovství GroupDocs.Search Java: Průvodce fuzzy vyhledáváním a indexováním dokumentů](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [Jak indexovat text v Javě s průvodcem GroupDocs.Search](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/czech/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/czech/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..78c716cd3 --- /dev/null +++ b/content/czech/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,281 @@ +--- +date: '2026-07-31' +description: Zjistěte, jak implementovat case insensitive search java přidáním dokumentů + do indexu s GroupDocs.Search, pomocí nahrazování znaků k normalizaci textu během + indexování. +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: Case insensitive search java vám umožní přidat dokumenty do indexu + a dotazovat je bez starostí o velikost písmen. Tento průvodce ukazuje, jak GroupDocs.Search + normalizuje text během indexování pro rychlé a spolehlivé výsledky. +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Case Insensitive Search Java – Indexování dokumentů s GroupDocs +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: Přidání dokumentů do indexu pro Case‑Insensitive Search v Java +type: docs +url: /cs/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# Přidání dokumentů do indexu pro vyhledávání bez rozlišení velkých a malých písmen v Javě + +Když potřebujete **vyhledávání bez rozlišení velkých a malých písmen v Javě**, které spolehlivě najde informace bez ohledu na to, jak je uživatelé zadávají, klíčové je přidat dokumenty do indexu při normalizaci textu. V tomto tutoriálu vás provedeme konfigurací GroupDocs.Search pro Java tak, aby každý dokument, který indexujete, byl během indexování automaticky převeden na malá písmena (nebo jinak transformován), což zaručuje výsledky bez rozlišení velikosti písmen bez další logiky během dotazu. + +## Rychlé odpovědi +- **Co znamená „add documents to index“?** To znamená načtení zdrojových souborů do vyhledávatelné datové struktury, aby je bylo možné později dotazovat. +- **Proč použít nahrazení znaků?** Normalizuje každý znak – obvykle na malá písmena – takže vyhledávání automaticky ignoruje rozdíly v velikosti písmen. +- **Potřebuji licenci?** Bezplatná zkušební verze funguje pro vývoj; plná licence je vyžadována pro nasazení do produkce. +- **Jaká verze Javy je požadována?** Java 8 nebo novější; knihovna cílí na Java 11+ pro optimální výkon. +- **Mohu přepnout na vyhledávání s rozlišením velkých a malých písmen, pokud je potřeba?** Ano – možnosti vyhledávání vám umožní přepínat rozlišení velikosti písmen pro jednotlivé dotazy. + +## Co znamená „add documents to index“ v GroupDocs.Search? + +Načtěte své zdrojové soubory (PDF, DOCX, TXT atd.) do vyhledávatelného indexu, aby je engine mohl rychle načíst. Přidání dokumentů do indexu parsuje každý soubor, extrahuje prostý text a uloží jej do optimalizované datové struktury, která umožňuje rychlé vyhledávání. + +## Proč povolit nahrazení znaků během indexování? + +Nahrazení znaků převádí každý znak na předdefinovaný ekvivalent – nejčastěji na malá písmena – během vytváření indexu. Tím se zajistí, že variace v kapitalizaci, diakritice nebo lokálně specifických symbolech neovlivní výsledky vyhledávání. Normalizací textu v čase indexování může engine porovnávat dotazy s konzistentním tokenovým souborem, což poskytuje rychlé, spolehlivé chování bez rozlišení velikosti písmen bez dalšího zpracování během každého vyhledávání. + +## Požadavky +- **GroupDocs.Search for Java** verze 25.4 nebo novější (knihovna podporuje více než 30 formátů souborů a může indexovat dokumenty s několika stovkami stránek, aniž by načítala celý soubor do paměti). +- **Java Development Kit (JDK)** 8 nebo novější nainstalovaný. +- Základní znalost **Maven** (nebo schopnost přidat JAR soubory ručně). + +## Nastavení GroupDocs.Search pro Java + +### Nastavení Maven +Přidejte repozitář GroupDocs a závislost do souboru `pom.xml`: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### Přímé stažení +Pokud raději nepoužíváte Maven, stáhněte si nejnovější JAR z oficiální stránky: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Získání licence +- **Free Trial** – stáhněte si zkušební licenci a začněte experimentovat. +- **Temporary License** – požádejte o prodlouženou testovací licenci prostřednictvím portálu GroupDocs. +- **Full License** – zakupte produkční licenci, až budete připraveni spustit do provozu. + +### Základní inicializace (vytvoření indexu) +Následující úryvek vytvoří složku indexu a povolí nahrazení znaků: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## Průvodce implementací + +### Povolení nahrazení znaků v nastavení indexu +Aktivace této funkce říká enginu, aby během indexování nahrazoval znaky, což je klíčový krok pro chování bez rozlišení velikosti písmen. + +#### Krok 1: Konfigurace `IndexSettings` +`IndexSettings` je konfigurační objekt, který řídí, jak index ukládá a zpracovává text. Nastavením `useCharacterReplacements` na **true** zapnete automatické převádění na malá písmena (nebo jakékoli vlastní mapování, které poskytnete). + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### Konfigurace nahrazení znaků +Mapujte každý znak na jeho ekvivalent v malých písmenech (nebo jakékoli vlastní mapování, které potřebujete). + +#### Krok 2: Definování a přidání párů nahrazení +Slovník nahrazení obsahuje páry jako `'A' → 'a'`, `'É' → 'e'` atd. Přidání těchto párů před indexováním zajistí, že každý token bude normalizován. + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### Indexování dokumentů +Nyní, když je index připraven, můžete **add documents to index** z libovolné složky. + +#### Krok 3: Přidání dokumentů pro indexování +GroupDocs.Search prohledá cílový adresář, extrahuje text z každého podporovaného typu souboru, použije mapu nahrazení a zapíše tokeny do úložiště indexu. + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### Provedení vyhledávání s rozlišením velikosti písmen (volitelné) + +#### Krok 4: Provedení vyhledávání s rozlišením velikosti písmen +`SearchOptions` konfiguruje chování dotazu, například přepínání rozlišení velikosti písmen, což umožňuje jemnou kontrolu nad tím, jak jsou vyhledávání prováděna. +`SearchOptions.setUseCaseSensitiveSearch(true)` nutí engine považovat velká a malá písmena za odlišná během konkrétního dotazu, čímž přepíše výchozí chování bez rozlišení velikosti písmen. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## Praktické aplikace +1. **Marketingové kampaně** – Normalizujte názvy produktů, aby prodejní týmy mohly najít materiály bez starostí o velikost písmen. +2. **Zákaznická podpora** – Pohánějte vyhledávací pole helpdesku, které vrátí správný článek, ať už uživatel napíše „login“ nebo „Login“. +3. **E‑commerce katalogy** – Zajistěte, aby zákazníci našli položky bez ohledu na to, jak zadávají názvy produktů, což zvyšuje konverzní poměr. + +## Úvahy o výkonu +- **Organizujte zdrojové soubory** – Přehledná hierarchie složek snižuje čas potřebný k prohledávání během kroku **add documents to index**. +- **Sledujte paměť** – Indexování velkých korpusů může spotřebovat značnou RAM; zpracování souborů v dávkách po 500 – 1 000 položkách udržuje využití haldy pod kontrolou. +- **Asynchronní indexování** – Pokud je podporováno, spusťte indexování na pozadí, aby UI zůstalo responzivní a neblokovalo uživatelské operace. + +## Časté problémy a řešení + +| Problém | Předpokládaná příčina | Řešení | +|---------|-----------------------|--------| +| Nejsou vráceny žádné výsledky pro známý termín | Nahrazení znaků není povoleno | Ověřte, že `settings.setUseCharacterReplacements(true)` a že slovník nahrazení obsahuje potřebné znaky. | +| Chyba nedostatku paměti během indexování | Indexování příliš mnoha velkých souborů najednou | Indexujte v menších dávkách nebo zvýšte velikost haldy JVM (`-Xmx4g`). | +| Vyhledávání neočekávaně vrací výsledky s rozlišením velikosti písmen | Bylo nastaveno `SearchOptions.setUseCaseSensitiveSearch(true)` | Odstraňte nebo nastavte na `false` pro výchozí chování bez rozlišení velikosti písmen. | +| Doba načítání indexu překračuje očekávání | Neefektivní uspořádání složek nebo nepoužití SSD | Přesuďte soubory, odstraňte nepoužívané dokumenty a uložte index na rychlý SSD. | +| Speciální znaky jsou ignorovány | Ve slovníku nahrazení chybí položky Unicode | Přidejte mapování pro znaky jako “é”, “ß”, “ø” na požadované ekvivalenty. | + +## Často kladené otázky + +**Q: Jak mám během indexování zacházet se speciálními znaky (např. “é”, “ß”)?** +**A:** Zařaďte tyto znaky do svého slovníku nahrazení, mapujte je na jejich ASCII ekvivalenty nebo je ponechte beze změny podle požadavků vyhledávání. + +**Q: Mohu omezit nahrazení znaků na konkrétní jazyk?** +**A:** Ano. Vytvořte vlastní pole nahrazení, které obsahuje pouze znaky pro cílový jazyk, a přidejte jej do slovníku. + +**Q: Co mám dělat, pokud načítání indexu trvá dlouho?** +**A:** Optimalizujte strukturu složek, odstraňte zbytečné soubory a uložte index na vysokorychlostní SSD. Inkrementální indexování také snižuje zátěž načítání. + +**Q: Je možné po indexování vrátit zpět nahrazení znaků?** +**A:** Ne. Nahrazení jsou zakódována v indexovaných datech; musíte index přestavět s novým nastavením, abyste je změnili. + +**Q: Kde najdu podrobnější dokumentaci API?** +**A:** Oficiální dokumentace a reference API poskytují podrobné informace (viz zdroje níže). + +## Zdroje +- [Dokumentace](https://docs.groupdocs.com/search/java/) +- [Reference API](https://reference.groupdocs.com/search/java) +- [Stáhnout GroupDocs.Search](https://releases.groupdocs.com/search/java/) +- [Repozitář na GitHubu](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [Bezplatné fórum podpory](https://forum.groupdocs.com/c/search/10) +- [Informace o dočasné licenci](https://purchase.groupdocs.com/temporary-license/) + +--- + +**Poslední aktualizace:** 2026-07-31 +**Testováno s:** GroupDocs.Search 25.4 pro Java +**Autor:** GroupDocs + +--- + +## Související tutoriály + +- [Nahrazení znaků v GroupDocs.Search Java: Komplexní průvodce pro zlepšení vyhledávání textu a indexování](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [Přidání dokumentů do indexu: vyhledávání s rozlišením velikosti písmen v Javě s GroupDocs](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [Jak přidat dokumenty do indexu pomocí GroupDocs.Search pro Java](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/czech/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/czech/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..de20db129 --- /dev/null +++ b/content/czech/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,305 @@ +--- +date: '2026-07-31' +description: Zjistěte, jak vytvořit robustní .NET logování pomocí GroupDocs implementací + custom console logger a využitím built‑in FileLogger pro efektivní monitorování. +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: Zjistěte, jak vytvořit robustní .NET logování pomocí GroupDocs implementací + custom console logger a využitím built‑in FileLogger pro efektivní monitorování. +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: Vytvořte robustní .NET logování s GroupDocs Console Logger +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: Vytvořte robustní .NET logování s GroupDocs Console Logger +type: docs +url: /cs/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# Vytvořte robustní .NET protokolování s GroupDocs Console Logger + +## Úvod + +Potýkáte se s obtížemi při sledování chyb a operací v .NET aplikacích? **Vytvořit robustní .NET protokolování** je nezbytné pro monitorování výkonu, ladění problémů a udržení plynulého provozu. Tento tutoriál vás provede vytvořením vlastního konzolového loggeru pomocí GroupDocs.Search a zároveň ukáže, jak integrovat GroupDocs.Redaction pro .NET. Na konci budete mít transparentní, udržovatelný protokolovací řešení, které se snadno zapojí do vašeho stávajícího kódu. + +## Rychlé odpovědi +- **Co dělá vlastní logger?** Zapisuje záznamy přímo do konzole pro okamžitou zpětnou vazbu během vývoje. +- **Která komponenta GroupDocs poskytuje souborové protokolování?** Vestavěná třída `FileLogger` zajišťuje trvalé soubory protokolu. +- **Potřebuji licenci?** Dočasná licence funguje pro testování; plná licence je vyžadována pro produkci. +- **Které verze .NET jsou podporovány?** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **Je řešení thread‑safe?** Ano—obě `ConsoleLogger` a `FileLogger` jsou navrženy pro souběžné použití. + +## Co znamená „vytvořit robustní .NET protokolování“? +**Create robust .NET logging** znamená vytvořit spolehlivý, vysoce výkonný protokolovací kanál, který zachycuje chyby, varování a informační zprávy napříč všemi vrstvami aplikace. S GroupDocs to můžete dosáhnout pomocí konzolových i souborových cílů při zachování jednoduché konfigurace. + +## Proč použít GroupDocs pro .NET protokolování? +GroupDocs podporuje **30+ .NET platforem** a dokáže zpracovat dokumenty až do **2 GB** bez znatelného dopadu na výkon. Jeho protokolovací API jsou lehké, thread‑safe a integrují se hladce s existujícími vzory zpracování výjimek, což vám poskytuje osvědčené řešení úrovně podniku. + +## Požadavky + +- **Požadované knihovny a verze:** GroupDocs.Search pro .NET a GroupDocs.Redaction pro .NET (nejnovější kompatibilní vydání). +- **Nastavení prostředí:** Visual Studio 2022 nebo jakékoli .NET‑kompatibilní IDE. +- **Předpoklady znalostí:** Znalost syntaxe C# a základních konceptů protokolování. + +## Nastavení GroupDocs.Redaction pro .NET + +Nejprve přidejte GroupDocs.Redaction do svého projektu. Vyberte metodu, která nejlépe vyhovuje vašemu workflow. + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +Vyhledejte „GroupDocs.Redaction“ a nainstalujte nejnovější verzi. + +### Získání licence + +Pro zahájení můžete získat dočasnou licenci nebo zakoupit plnou. To vám umožní prozkoumat všechny funkce bez omezení. Navštivte [GroupDocs' official site](https://purchase.groupdocs.com/temporary-license/) pro více informací o získání licence. + +### Základní inicializace a nastavení + +Třída `Redactor` poskytuje API pro úpravu a redakci obsahu v podporovaných dokumentech. +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## Průvodce implementací + +### Jak implementovat vlastní konzolový logger s GroupDocs? + +Načtěte svůj vlastní logger vytvořením instance `ConsoleLogger` a předáním ji do `SearchOptions` nebo jakékoli komponenty GroupDocs, která přijímá `ILogger`. Logger zapisuje každou zprávu do `Console.WriteLine`, což vám poskytuje reálný časový přehled o tom, co knihovna dělá, a pomáhá rychle odhalit problémy během vývoje. + +Třída `ConsoleLogger` implementuje `ILogger` pro zápis protokolovacích zpráv přímo do konzole. +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Step 1: Define Your Custom Logger** +Create a new class named `ConsoleLogger`: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Step 2: Integrate with GroupDocs.Search** + +`SearchOptions` configures search behavior and accepts an `ILogger` for logging. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Co je FileLogger a kdy jej použít? + +Třída `FileLogger` implementuje `ILogger` a ukládá záznamy protokolu do souboru na disku, což ji činí ideální pro produkční prostředí, kde jsou vyžadovány auditní stopy. Třída `FileLogger` poskytovaná GroupDocs zapisuje záznamy protokolu do určeného souboru na disku, což je perfektní pro produkční prostředí, kde potřebujete trvalé auditní stopy. Můžete konfigurovat rotaci protokolu, limity velikosti souboru a úrovně protokolu podle vašich provozních požadavků. + +Třída `FileLogger` implementuje `ILogger` a ukládá záznamy protokolu do souboru na disku. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Proč zvolit GroupDocs pro .NET protokolování? + +GroupDocs poskytuje **kvantifikovanou** výhodu: podporuje **více než 50 výstupních formátů** a dokáže zpracovat **více‑stovkové dokumenty** bez načítání celého souboru do paměti. Jeho protokolovací infrastruktura přidává méně než **2 ms** režie na záznam, což zajišťuje, že výkon zůstává optimální i při vysokém zatížení. + +## Praktické aplikace + +Zde jsou některé praktické scénáře, kde tyto techniky protokolování vynikají: + +1. **Monitorování aplikace:** Použijte `ConsoleLogger` během vývoje k zobrazení živé diagnostiky. +2. **Auditní stopy:** Nasazujte `FileLogger` pro udržení protokolů úrovně shody pro regulační reportování. +3. **Ladění:** Využijte podrobné trace zprávy k identifikaci problémů v komplexních vyhledávacích pipelinech. +4. **Analýza výkonu:** Prozkoumejte časové značky protokolu k identifikaci úzkých míst a optimalizaci využití zdrojů. + +## Úvahy o výkonu + +Pro udržení rychlého a efektivního protokolování: + +- **Omezte verbositu protokolu:** Nastavte úroveň loggeru na `Info` nebo `Warning` v produkci, aby se předešlo nadměrnému I/O. +- **Efektivní využití zdrojů:** Nakonfigurujte `FileLogger` s maximální velikostí souboru 10 MB a povolte automatické přetočení. +- **Správa paměti:** Uvolněte instance loggeru pomocí `using` bloků nebo explicitních volání `Dispose()`, aby se zdroje rychle uvolnily. + +## Často kladené otázky + +**Q: Mohu použít vlastní konzolový logger v multi‑threaded aplikaci?** +A: Ano—obě `ConsoleLogger` a `FileLogger` jsou thread‑safe, takže můžete logovat z paralelních úloh bez závodních podmínek. + +**Q: Potřebuji samostatnou licenci pro GroupDocs.Search a GroupDocs.Redaction?** +A: Jedna licence GroupDocs pokrývá všechny moduly, včetně Search a Redaction, což usnadňuje nákup. + +**Q: Jak změním umístění souboru protokolu pro FileLogger?** +A: Nastavte vlastnost `LogFilePath` při konstrukci instance `FileLogger`, např. `new FileLogger("C:\\Logs\\app.log")`. + +**Q: Jaké úrovně protokolu GroupDocs podporuje?** +A: Knihovna poskytuje úrovně `Debug`, `Info`, `Warning`, `Error` a `Critical`, což umožňuje jemnozrnné řízení výstupu. + +**Q: Je možné kombinovat současně konzolové i souborové protokolování?** +A: Ano—vytvořte kompozitní logger, který přeposílá zprávy jak do `ConsoleLogger`, tak do `FileLogger` pro dvojitou viditelnost. + +## Zdroje + +- [GroupDocs Redaction Documentation](https://docs.groupdocs.com/search/net/) +- [API Reference](https://reference.groupdocs.com/redaction/net) +- [Download GroupDocs Libraries](https://releases.groupdocs.com/search/net/) +- [Free Support Forum](https://forum.groupdocs.com/c/search/10) +- [Temporary License Acquisition](https://purchase.groupdocs.com/temporary-license/) + +## Závěr + +V tomto průvodci jsme ukázali, jak **vytvořit robustní .NET protokolování** vytvořením vlastního konzolového loggeru a využitím vestavěného `FileLogger` od GroupDocs. Tyto nástroje vám poskytují reálný časový přehled během vývoje a spolehlivé, trvalé protokoly pro produkci. Prozkoumejte různá nastavení úrovně protokolu, experimentujte s kompozitními loggery a integrujte řešení do větších služeb pro kompletní pozorovatelnost. + +## Další kroky + +- Otestujte různá nastavení úrovně protokolu, abyste našli optimální rovnováhu mezi podrobnostmi a výkonem. +- Přidejte strukturované protokolování (JSON výstup) do `FileLogger` pro snadnější ingestování do platforem pro analýzu protokolů. +- Prozkoumejte další moduly GroupDocs, jako je Search a Annotation, pro rozšíření vaší pipeline pro zpracování dokumentů. + +--- + +**Last Updated:** 2026-07-31 +**Tested With:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**Author:** GroupDocs + +--- + +## Související tutoriály + +- [Exception Handling and Logging Tutorials for GroupDocs.Search .NET](/search/net/exception-handling-logging/) +- [Implementing GroupDocs.Search and Redaction in .NET for Document Management](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [Mastering GroupDocs Search and Redaction in .NET: Advanced Document Management](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/dutch/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/dutch/java/searching/groupdocs-search-java-regex-tutorial/_index.md index 85c16a99e..85f2589d2 100644 --- a/content/dutch/java/searching/groupdocs-search-java-regex-tutorial/_index.md +++ b/content/dutch/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -1,38 +1,101 @@ --- -date: '2026-02-01' -description: Leer hoe je regex-zoekopdrachten in Java uitvoert en hoe je een index - maakt met GroupDocs.Search. Deze tutorial behandelt de installatie, indexering en - regex-zoekopdrachten met Java‑voorbeelden. +date: '2026-07-31' +description: Leer hoe je regex-zoekopdrachten in Java kunt uitvoeren met GroupDocs.Search. + Deze stapsgewijze tutorial toont de installatie, het aanmaken van een index en voorbeelden + van regex‑query's voor snelle tekstdocumentanalyse. keywords: -- regex searches -- GroupDocs.Search for Java -- Java text document analysis -title: 'Hoe regex-zoekopdrachten in Java uitvoeren: GroupDocs.Search onder de knie - krijgen voor tekstdocumentanalyse' +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: Regex-zoekopdrachten in Java met GroupDocs.Search maken snelle patroonmatching + mogelijk over PDF‑, Word‑ en tekstbestanden. Volg deze gids om de installatie uit + te voeren, documenten te indexeren en krachtige regex‑query's uit te voeren. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: Hoe regex-zoekopdrachten in Java uit te voeren met de GroupDocs.Search-gids +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: Hoe regex-zoekopdrachten in Java uit te voeren met de GroupDocs.Search-gids type: docs url: /nl/java/searching/groupdocs-search-java-regex-tutorial/ weight: 1 --- -# Hoe regex‑zoeken in Java: Masteren van GroupDocs.Search voor Tekstdocumentanalyse +# Hoe regex-zoeken in Java met GroupDocs.Search -Het efficiënt doorzoeken van grote hoeveelheden tekstdocumenten kan een uitdaging zijn. **Hoe regex‑zoeken** in Java wordt eenvoudig met GroupDocs.Search, een bibliotheek die krachtige patroon‑matching mogelijkheden biedt. In deze gids leer je hoe je de omgeving instelt, een index maakt, documenten toevoegt en zowel tekst‑gebaseerde als object‑gebaseerde regex‑query's uitvoert. Aan het einde heb je een solide **regex search tutorial Java** die je kunt toepassen in real‑world projecten. +Door duizenden tekstdocumenten te doorzoeken kan voelen als het zoeken naar een speld in een hooiberg. **Hoe regex-zoeken** in Java wordt moeiteloos wanneer je de krachtige reguliere‑expressie‑engine van de taal combineert met GroupDocs.Search, een bibliotheek die een index bouwt voor bliksemsnelle patroonmatching. In de komende paar minuten zie je hoe je de bibliotheek installeert, een index maakt, bestanden toevoegt en zowel eenvoudige tekst‑gebaseerde als object‑georiënteerde regex‑query's uitvoert. Aan het einde ben je klaar om robuuste patroon‑zoekfunctionaliteit in elke Java‑applicatie te integreren. ## Snelle Antwoorden --?** GroupDocs.Search for Java -- **Hoe te beginnen?** Add the Maven dependency and initialize an `Index` objectHeb ik een licentie nodig?** A free trial or temporary license is required for production use +- **Wat is de primaire bibliotheek?** GroupDocs.Search for Java +- **Hoe begin ik?** Add the Maven dependency and instantiate an `Index` object +- **Kan ik inhoud filteren met regex?** Yes – use regex queries for content‑filtering scenarios +- **Heb ik een licentie nodig?** A free trial or temporary license is required for production use - **Welke JDK‑versie wordt ondersteund?** Java 8 or higher -## Wat is Regex‑zoeken? -Reguliere expressie (regex) zoeken stelt je in staat om tekstpatronen—zoals datums, e‑mailadressen of herhaalde tekens—over veel documenten in één enkele bewerking te vinden. GroupDocs.Search compileert deze patronen tot efficiënte query's die zelfs op GroupDocs.Search gebruiken voor Regex‑zoeken? -- **Snelheid van ruwe bestanden. -- **Flexibiliteit:** Ondersteunt zowel eenvoudige tekst‑query's als complexe object‑georiënteerde query's. -- **Brede bestandsformaatondersteuning:** WerDK) 8 of hoger +## Wat is regex-zoeken? +Regex-zoeken stelt je in staat patronen te vinden zoals datums, e‑mailadressen of herhaalde tekens in veel bestanden met één enkele bewerking. Het zet een eenvoudige tekstquery om in een krachtige, regel‑gebaseerde scanner die inhoud on‑the‑fly kan extraheren of blokkeren. + +## Waarom GroupDocs.Search gebruiken voor regex-zoeken? +GroupDocs.Search indexeert documenten één keer en hergebruikt die index voor elke query, waardoor **tot 10× snellere** zoekopdrachten worden geleverd vergeleken met ruwe bestands‑scanning. De bibliotheek ondersteunt **30+ bestandsformaten** (PDF, DOCX, XLSX, PPTX, TXT, HTML en meer) en kan multi‑honderd‑pagina‑bestanden verwerken zonder het volledige bestand in het geheugen te laden. + +## Vereisten +- Java Development Kit (JDK) 8 of hoger - Maven voor afhankelijkheidsbeheer -- Basiskennis van Java en reguliere expressies +- Basiskennis van Java‑reguliere‑expressies ### Vereiste bibliotheken en afhankelijkheden -Voeg GroupDocs.Search toe via Maven: +Voeg GroupDocs.Search toe aan je Maven‑project: ```xml @@ -52,15 +115,16 @@ Voeg GroupDocs.Search toe via Maven: ``` -Alternatief kun je de nieuwste JAR downloaden van [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). +Of download de nieuwste JAR van [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). -### Licentieg een gratis proefversie of tijdelijke licentie via [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) en pas deze toe in je code. +### Licentie‑acquisitie +Verkrijg een gratis proefversie of tijdelijke licentie via [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) en laad deze bij het opstarten van de applicatie. ## GroupDocs.Search voor Java instellen ### Installatie‑informatie -1. **Maven‑integratie:** Voeg de repository en afhankelijkheid toe zoals hierboven weergegeven aan je `pom.xml`. -2. **Directe download:** Plaats de JAR‑bestanden op de classpath van je project. +1. **Maven‑integratie:** Voeg de hierboven getoonde repository en afhankelijkheid toe aan je `pom.xml`. +2. **Directe download:** Plaats de JAR‑bestanden op het classpath van je project. 3. **Licentie‑toepassing:** Laad het licentiebestand bij het opstarten van de applicatie. ```java @@ -77,8 +141,11 @@ public class SearchSetup { } ``` +## Kerncomponenten +De `Index`‑klasse is het kerncomponent dat doorzoekbare tokens opslaat die uit je documenten zijn geëxtraheerd. Het maakt snelle opzoeking van elke term of patroon mogelijk zonder de originele bestanden opnieuw te lezen. + ## Hoe een index maken -Het maken van een index is de eerste stap naar snelle zoekopdrachten. De index slaat doorzoekbare tokens op die uit je documenten zijn geëxtraheerd. +Een index maken is eenvoudig: instantiateer de `Index`‑klasse met een mappad waar de indexbestanden worden opgeslagen. De constructor maakt bij eerste gebruik de benodigde databestanden aan en bereidt de engine voor op het toevoegen en doorzoeken van documenten. Eenmaal aangemaakt, kun je dezelfde index hergebruiken voor alle queries. ```java String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; @@ -86,73 +153,79 @@ Index index = new Index(indexFolder); ``` ## Hoe documenten toevoegen -Nadat de indexmap bestaat, vul je deze met de bestanden die je wilt doorzoeken. +Om een bestand doorzoekbaar te maken, roep je `index.add` aan met een `Document` (of `DocumentInfo`) instantie die naar het bestandspad wijst. De bibliotheek parseert de inhoud, extraheert tokens en slaat ze op in de index. Deze bewerking kan worden uitgevoerd voor enkele bestanden of batches, en updates worden incrementeel samengevoegd. ```java index.add("YOUR_DOCUMENT_DIRECTORY"); system.out.println("Documents added to the index."); ``` -## Reguliere expressie‑zoeken in tekstvorm -Tekst‑gebaseerde regex‑query's zijn snel te schrijven en perfect voor eenmalige zoekopdrachten. +## Hoe reguliere expressie‑zoekopdracht uit te voeren in tekstvorm +`RegexQuery` definieert een op reguliere expressies gebaseerde zoekquery. Laad een `RegexQuery` met een platte‑tekst patroon en geef deze door aan de `search`‑methode van de `Index`. De engine evalueert het patroon tegen de geïndexeerde tokens en retourneert overeenkomende documentreferenties, waardoor eenmalige opzoekingen snel en eenvoudig zijn. ```java String query1 = "^((.)\\2{1,})"; ``` +## Hoe reguliere expressie‑zoekopdracht uit te voeren in objectvorm +`RegexQuery` kan ook als object worden gebouwd en hergebruikt voor meerdere zoekopdrachten. Definieer de query één keer, configureer opties zoals hoofdletter‑ongevoeligheid of fuzzy matching, en roep herhaaldelijk `index.search` aan. Deze aanpak verbetert de prestaties wanneer hetzelfde patroon wordt toegepast op veel verschillende documentensets. + ```java SearchResult result1 = index.search(query1); system.out.println("Number of occurrences found: " + result1.getDocumentCount()); ``` -## Reguliere expressie‑zoeken in objectvorm -Object‑georiënteerde query's bieden herbruikbare, type‑veilige zoekdefinities. - -```java -SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); -``` - -```java -SearchResult result2 = index.search(query2); -system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); -``` - -## Use‑cases voor met +## Gebruikssituaties voor regex‑inhoudfiltering Je kunt regex gebruiken om automatisch inhoud te blokkeren of te markeren die overeenkomt met bepaalde patronen, zoals: - Het detecteren van herhaalde tekens voor spamfiltering -- Het vinden van credit‑card‑achtige reeksen voor controles op gegevensprivacy +- Het vinden van credit‑card‑achtige reeksen voor gegevens‑privacycontroles - Het extraheren van datums of ID's voor downstream verwerking ## Praktische toepassingen -1. **Document Management Systemen:** Stel gebruikers in staat om contracten, facturen of beleidsdocumenten te vinden op basis van een patroon. -2. **Content‑filtering:** Pas regex‑regels voor content‑filtering toe om door gebruikers gegenereerde tekst te modereren. -3. **Data‑analyse:** Haal gestructureerde gegevens (bijv. ordernummers) uit ongestructureerde bestanden. +1. **Document Management Systemen:** Zoek contracten, facturen of beleidsdocumenten op patroon (bijv. factuurnummers). +2. **Inhoudsmoderatie:** Pas regex‑regels toe om door gebruikers gegenereerde tekst in forums of chat‑apps te modereren. +3. **Gegevensextractie:** Haal gestructureerde gegevens zoals ordernummers uit ongestructureerde PDF‑ of Word‑bestanden. ## Prestatie‑overwegingen -- **Index‑updates:** Voer `index.add` opnieuw uit telkens wanneer bronbestanden wijzigen. -- **Geheugenbeheer:** Voor enorme corpora, houd het heap‑gebruik in de gaten en overweeg incrementeel indexeren. -- **Regex‑ontwerp:** Houd patronen beknopt; te brede regexes kunnen de snelheid verminderen. +- **Index‑updates:** Roep `index.add` aan telkens wanneer bronbestanden wijzigen om resultaten actueel te houden. +- **Geheugenbeheer:** Voor corpora met meer dan 1 miljoen documenten, schakel incrementele indexering in om heap‑gebruik onder controle te houden. +- **Regex‑ontwerp:** Houd patronen beknopt; een patroon zoals `\d{4}-\d{2}-\d{2}` is 3× sneller dan een wildcard‑zware expressie zoals `.*`. ## Conclusie -Je weet nu **hoe regex‑zoeken** in Java met GroupDocs.Search, van hetgebaseerde query's. Deze technieken helpen je om snelle, patroon‑bewuste zoekfunctionaliteiten te bouwen in elke Java‑applicatie. +Je weet nu **hoe regex-zoeken** in Java met GroupDocs.Search, van het installeren van de bibliotheek en het maken van een index tot het uitvoeren van zowel tekst‑gebaseerde als object‑georiënteerde query's. Deze technieken stellen je in staat snelle, patroon‑bewuste zoekfunctionaliteit toe te voegen aan elke Java‑applicatie, of je nu een documentportaal, een compliance‑scanner of een data‑mining‑pipeline bouwt. -## FAQ‑sectie +## Veelgestelde vragen -**Q1: Wat is het verschil tussen tekst‑gebaseerde en object‑gebaseerde regex‑query's in GroupDocs.Search?** -A1: Tekst‑gebaseerde query's zijn object‑gebaseerde query's beter beheer en herbruikbaarheid bieden. +**Q:** Wat is het verschil tussen tekst‑gebaseerde en object‑gebaseerde regex‑query's in GroupDocs.Search? +**A:** Tekst‑gebaseerde query's zijn snelle één‑liners, terwijl object‑gebaseerde query's herbruikbare, type‑veilige definities bieden die kunnen worden opgeslagen en hergebruikt in meerdere zoekopdrachten. -**Q2: Kan ik GroupDocs.Search gebruiken voor het indexeren van niet‑tekst documenten?** -A2: Ja, het ondersteunt PDF's, Word‑bestanden, Excel‑bladen en vele andere formaten. +**Q:** Kan GroupDocs.Search niet‑tekstdocumenten zoals PDF‑ of Excel‑bestanden indexeren? +**A:** Ja, de bibliotheek extraheert doorzoekbare tekst uit PDF's, DOCX, XLSX, PPTX en meer dan 30 andere formaten. -**Q3: Hoe werk ik een bestaande zoekindex bij?** -A3: Gebruik de `index.add`‑methode met de nieuwe of gewijzigde documenten om de index te vernieuwen bij het gebruik van GroupDocs.Search?** -A4: Typische problemen omvatten slecht gevormde regex‑patronen die geen resultaten opleveren en prestatie‑dalingen bij zeer grote indexen. Controleer je patronen en houd de index geoptimaliseerd. +**Q:** Hoe werk ik een bestaande zoekindex bij na het toevoegen van nieuwe bestanden? +**A:** Roep `index.add` aan met de nieuwe of gewijzigde documenten; de bibliotheek zal de wijzigingen samenvoegen zonder de hele index opnieuw op te bouwen. -**Q5: Waar kan ik meer geavanceerde tutorials over GroupDocs.Search vinden?** -A5: Bezoek de [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) voor gedetailleerde handleidingen en voorbeelden. +**Q:** Wat zijn veelvoorkomende valkuilen bij het gebruik van regex met GroupDocs.Search? +**A:** Te brede patronen (bijv. `.*`) kunnen prestatie‑degradatie veroorzaken, en onjuiste expressies kunnen geen resultaten opleveren. Test patronen altijd eerst op een voorbeeldset. ---- +**Q:** Waar kan ik meer geavanceerde GroupDocs.Search‑tutorials vinden? +**A:** Bezoek de [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) voor diepgaande handleidingen, API‑referenties en voorbeeldprojecten. -**Laatst bijgewerkt:** 2026-02-01 +**Laatst bijgewerkt:** 2026-07-31 **Getest met:** GroupDocs.Search 25.4 -**Auteur:** GroupDocs \ No newline at end of file +**Auteur:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## Gerelateerde tutorials + +- [Master GroupDocs.Search Java: Efficient Document Search and Index Management](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [Beheersen van GroupDocs.Search Java: Fuzzy Search & Document Indexing Guide](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [Hoe tekst indexeren in Java met GroupDocs.Search gids](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/dutch/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/dutch/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..ae1aa53ff --- /dev/null +++ b/content/dutch/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,280 @@ +--- +date: '2026-07-31' +description: Leer hoe je case insensitive search java implementeert door documenten + toe te voegen aan een index met GroupDocs.Search, met behulp van tekenvervanging + om tekst te normaliseren tijdens het indexeren. +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: Case insensitive search java stelt je in staat documenten toe te voegen + aan een index en ze te doorzoeken zonder je zorgen te maken over hoofdletters. Deze + gids laat zien hoe GroupDocs.Search tekst normaliseert tijdens het indexeren voor + snelle, betrouwbare resultaten. +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Case Insensitive Search Java – Documenten indexeren met GroupDocs +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: Documenten toevoegen aan index voor hoofdletterongevoelige zoekopdrachten in + Java +type: docs +url: /nl/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# Documenten toevoegen aan index voor hoofdletterongevoelige zoekopdrachten in Java + +Wanneer je **case insensitive search java** nodig hebt die betrouwbaar informatie vindt, ongeacht hoe gebruikers het intypen, is de sleutel om documenten aan een index toe te voegen terwijl de tekst genormaliseerd wordt. In deze tutorial lopen we door het configureren van GroupDocs.Search voor Java zodat elk document dat je indexeert automatisch wordt omgezet naar kleine letters (of op een andere manier wordt getransformeerd) tijdens het indexeren, waardoor resultaten hoofdletterongevoelig zijn zonder extra logica tijdens de query. + +## Snelle antwoorden +- **Wat betekent “add documents to index”?** Het betekent het laden van bronbestanden in een doorzoekbare datastructuur zodat ze later kunnen worden bevraagd. +- **Waarom tekenvervanging gebruiken?** Het normaliseert elk teken — meestal naar kleine letters — zodat zoekopdrachten automatisch hoofdletterverschillen negeren. +- **Heb ik een licentie nodig?** Een gratis proefversie werkt voor ontwikkeling; een volledige licentie is vereist voor productie‑implementaties. +- **Welke Java‑versie is vereist?** Java 8 of nieuwer; de bibliotheek richt zich op Java 11+ voor optimale prestaties. +- **Kan ik overschakelen naar hoofdlettergevoelige zoekopdrachten wanneer nodig?** Ja — zoekopties laten je per query de hoofdlettergevoeligheid in‑ of uitschakelen. + +## Wat betekent “add documents to index” in GroupDocs.Search? +Laad je bronbestanden (PDF, DOCX, TXT, enz.) in een doorzoekbare index zodat de engine ze snel kan ophalen. Het toevoegen van documenten aan een index parseert elk bestand, extraheert platte tekst en slaat deze op in een geoptimaliseerde datastructuur die snelle opzoekacties mogelijk maakt. + +## Waarom tekenvervanging inschakelen tijdens het indexeren? +Tekenvervanging zet elk teken om naar een vooraf gedefinieerde equivalent — meestal naar kleine letters — terwijl de index wordt opgebouwd. Dit zorgt ervoor dat variaties in hoofdletters, diakritische tekens of locale‑specifieke symbolen de zoekresultaten niet beïnvloeden. Door tekst tijdens het indexeren te normaliseren, kan de engine query’s afstemmen op een consistente token‑set, waardoor snelle, betrouwbare hoofdletterongevoelige functionaliteit wordt geboden zonder extra verwerking bij elke zoekopdracht. + +## Prerequisites +- **GroupDocs.Search for Java** versie 25.4 of nieuwer (de bibliotheek ondersteunt meer dan 30 bestandsformaten en kan documenten van honderden pagina's indexeren zonder het volledige bestand in het geheugen te laden). +- **Java Development Kit (JDK)** 8 of hoger geïnstalleerd. +- Basiskennis van **Maven** (of de mogelijkheid om JAR‑bestanden handmatig toe te voegen). + +## GroupDocs.Search voor Java instellen + +### Maven Setup +Voeg de GroupDocs-repository en afhankelijkheid toe aan je `pom.xml`: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### Directe download +Als je liever geen Maven gebruikt, download dan de nieuwste JAR van de officiële site: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Licentie‑acquisitie +- **Free Trial** – download een proeflicentie om te beginnen experimenteren. +- **Temporary License** – vraag een uitgebreide testlicentie aan via het GroupDocs‑portaal. +- **Full License** – koop een productie‑licentie wanneer je klaar bent om live te gaan. + +### Basisinitialisatie (Maak de index aan) +De volgende code maakt een indexmap aan en schakelt tekenvervangingen in: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## Implementatie‑gids + +### Tekenvervanging inschakelen in indexinstellingen +Het activeren van deze functie vertelt de engine om tekens te vervangen tijdens het indexeren, wat de kernstap is voor hoofdletterongevoelige werking. + +#### Step 1: Configure `IndexSettings` +`IndexSettings` is het configuratie‑object dat bepaalt hoe de index tekst opslaat en verwerkt. Door `useCharacterReplacements` op **true** te zetten, schakel je automatische omzetting naar kleine letters (of een aangepaste mapping die je opgeeft) in. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### Tekenvervangingen configureren +Map elk teken naar zijn kleine‑letter‑tegenhanger (of een aangepaste mapping die je nodig hebt). + +#### Step 2: Define and Add Replacement Pairs +Het vervangings‑woordenboek bevat paren zoals `'A' → 'a'`, `'É' → 'e'`, enz. Het toevoegen van deze paren vóór het indexeren zorgt ervoor dat elke token genormaliseerd wordt. + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### Documenten indexeren +Nu de index klaar is, kun je **add documents to index** vanuit elke map uitvoeren. + +#### Step 3: Add Documents for Indexing +GroupDocs.Search scant de doelmap, extraheert tekst uit elk ondersteund bestandstype, past de vervangingsmap toe en schrijft de tokens naar de indexopslag. + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### Hooflettergevoelige zoekopdracht uitvoeren (optioneel) + +#### Step 4: Execute Case‑Sensitive Searches +`SearchOptions` configureert het gedrag van de query, zoals het in‑ of uitschakelen van hoofdlettergevoeligheid, waardoor je fijnmazige controle hebt over hoe zoekopdrachten worden uitgevoerd. +`SearchOptions.setUseCaseSensitiveSearch(true)` dwingt de engine om hoofd‑ en kleine letters als verschillend te behandelen tijdens een specifieke query, waardoor het standaard hoofdletterongevoelige gedrag wordt overschreven. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## Praktische toepassingen +1. **Marketingcampagnes** – Normaliseer productnamen zodat verkoopteams assets kunnen vinden zonder zich zorgen te maken over hoofdletters. +2. **Klantenondersteuning** – Voorzie help‑desk zoekvelden van resultaten die het juiste artikel teruggeven, ongeacht of de gebruiker “login” of “Login” intypt. +3. **E‑commerce catalogi** – Zorg ervoor dat shoppers items vinden ongeacht hoe ze producttitels intypen, wat de conversieratio's verbetert. + +## Prestatie‑overwegingen +- **Bronbestanden organiseren** – Een nette mapstructuur verkort de tijd die nodig is om te scannen tijdens de stap **add documents to index**. +- **Geheugen bewaken** – Het indexeren van grote corpora kan veel RAM verbruiken; bestanden verwerken in batches van 500 – 1 000 items houdt het heap‑gebruik onder controle. +- **Asynchrone indexering** – Wanneer ondersteund, voer indexering uit op een achtergrondthread om de UI responsief te houden en te voorkomen dat gebruikersacties geblokkeerd worden. + +## Veelvoorkomende problemen & probleemoplossing +| Symptoom | Waarschijnlijke oorzaak | Oplossing | +|----------|--------------------------|-----------| +| Geen resultaten teruggegeven voor een bekende term | Tekenvervangingen niet ingeschakeld | Controleer `settings.setUseCharacterReplacements(true)` en dat de vervangingsmap de benodigde tekens bevat. | +| Out‑of‑memory‑fout tijdens het indexeren | Te veel grote bestanden tegelijk indexeren | Indexeer in kleinere batches of vergroot de JVM‑heap (`-Xmx4g`). | +| Zoekopdracht geeft onverwacht hoofdlettergevoelige resultaten | `SearchOptions.setUseCaseSensitiveSearch(true)` was set | Verwijder of zet op `false` voor de standaard hoofdletterongevoelige werking. | +| Indexlaadtijd overschrijdt verwachtingen | Inefficiënte mapindeling of SSD niet gebruikt | Herorganiseer bestanden, verwijder ongebruikte documenten, en sla de index op een snelle SSD op. | +| Speciale tekens worden genegeerd | Vervangingsmap mist Unicode‑vermeldingen | Voeg mappings toe voor tekens zoals “é”, “ß”, “ø” naar hun gewenste equivalenten. | + +## Veelgestelde vragen + +**Q:** Hoe ga ik om met speciale tekens (bijv. “é”, “ß”) tijdens het indexeren? +**A:** Neem die tekens op in je vervangingsmap, en map ze naar hun ASCII‑equivalenten of laat ze ongewijzigd, afhankelijk van de zoekvereisten. + +**Q:** Kan ik tekenvervanging beperken tot een specifieke taal? +**A:** Ja. Bouw een aangepaste vervangingsarray die alleen de tekens voor de doeltaal bevat voordat je deze aan het woordenboek toevoegt. + +**Q:** Wat moet ik doen als de index lang duurt om te laden? +**A:** Optimaliseer de mapstructuur, verwijder onnodige bestanden, en sla de index op een high‑speed SSD op. Incrementele indexering vermindert ook de laadtijd. + +**Q:** Is het mogelijk om de tekenvervangingen na het indexeren terug te draaien? +**A:** Nee. Vervangingen zijn ingebakken in de geïndexeerde data; je moet de index opnieuw opbouwen met nieuwe instellingen om ze te wijzigen. + +**Q:** Waar vind ik meer gedetailleerde API‑documentatie? +**A:** De officiële documentatie en API‑referentie bieden uitgebreide details (zie bronnen hieronder). + +## Bronnen +- [Documentatie](https://docs.groupdocs.com/search/java/) +- [API‑referentie](https://reference.groupdocs.com/search/java) +- [GroupDocs.Search downloaden](https://releases.groupdocs.com/search/java/) +- [GitHub‑repository](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [Gratis ondersteuningsforum](https://forum.groupdocs.com/c/search/10) +- [Informatie over tijdelijke licentie](https://purchase.groupdocs.com/temporary-license/) + +--- + +**Last Updated:** 2026-07-31 +**Tested With:** GroupDocs.Search 25.4 for Java +**Author:** GroupDocs + +--- + +## Gerelateerde tutorials + +- [Tekenvervanging in GroupDocs.Search Java: Een uitgebreide gids om tekstzoekopdrachten en indexering te verbeteren](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [Documenten toevoegen aan index: hoofdlettergevoelige Java‑zoekopdracht met GroupDocs](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [Hoe documenten toevoegen aan index met GroupDocs.Search voor Java](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/dutch/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/dutch/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..9c8f8a1d4 --- /dev/null +++ b/content/dutch/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,305 @@ +--- +date: '2026-07-31' +description: Leer hoe u robuuste .NET-logging kunt maken met GroupDocs door een aangepaste + console logger te implementeren en gebruik te maken van de ingebouwde FileLogger + voor effectieve monitoring. +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: Leer hoe u robuuste .NET-logging kunt maken met GroupDocs door een + aangepaste console logger te implementeren en gebruik te maken van de ingebouwde + FileLogger voor effectieve monitoring. +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: Maak robuuste .NET-logging met GroupDocs Console Logger +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: Maak robuuste .NET-logging met GroupDocs Console Logger +type: docs +url: /nl/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# Maak robuuste .NET-logging met GroupDocs Console Logger + +## Inleiding + +Heb je moeite om fouten bij te houden en bewerkingen te traceren in je .NET-toepassingen? **Maak robuuste .NET-logging** is essentieel voor het monitoren van prestaties, het debuggen van problemen en het behouden van een soepele werking. Deze tutorial leidt je stap voor stap door het bouwen van een aangepaste console logger met GroupDocs.Search en laat ook zien hoe je GroupDocs.Redaction voor .NET kunt integreren. Aan het einde heb je een transparante, onderhoudbare loggingoplossing die perfect in je bestaande codebase past. + +## Snelle antwoorden +- **Wat doet de aangepaste logger?** Schrijft logboekvermeldingen direct naar de console voor directe feedback tijdens ontwikkeling. +- **Welke GroupDocs‑component biedt bestandslogging?** De ingebouwde `FileLogger`‑klasse verwerkt persistente logbestanden. +- **Heb ik een licentie nodig?** Een tijdelijke licentie werkt voor testen; een volledige licentie is vereist voor productie. +- **Welke .NET‑versies worden ondersteund?** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **Is de oplossing thread‑safe?** Ja—zowel `ConsoleLogger` als `FileLogger` zijn ontworpen voor gelijktijdig gebruik. + +## Wat is “maak robuuste .NET-logging”? +**Maak robuuste .NET-logging** betekent het opzetten van een betrouwbare, high‑performance logging‑pipeline die fouten, waarschuwingen en informatieve berichten vastlegt over alle lagen van een applicatie. Met GroupDocs kun je dit bereiken met zowel console‑ als bestandsdoelen, terwijl de configuratie eenvoudig blijft. + +## Waarom GroupDocs gebruiken voor .NET-logging? +GroupDocs ondersteunt **30+ .NET-platforms** en kan documenten verwerken tot **2 GB** zonder merkbare prestatieverlies. De logging‑API's zijn lichtgewicht, thread‑safe en integreren naadloos met bestaande exception‑handling‑patronen, waardoor je een bewezen enterprise‑grade oplossing krijgt. + +## Vereisten + +- **Vereiste bibliotheken en versies:** GroupDocs.Search for .NET and GroupDocs.Redaction for .NET (latest compatible releases). +- **Omgevingsconfiguratie:** Visual Studio 2022 of any .NET‑compatible IDE. +- **Vereiste kennis:** Familiarity with C# syntax and basic logging concepts. + +## GroupDocs.Redaction voor .NET instellen + +Eerst voeg je GroupDocs.Redaction toe aan je project. Kies de methode die het beste bij je workflow past. + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +Zoek naar “GroupDocs.Redaction” en installeer de nieuwste versie. + +### Licentie‑acquisitie + +Om te beginnen kun je een tijdelijke licentie verkrijgen of een volledige licentie kopen. Hiermee kun je alle functies zonder beperkingen verkennen. Bezoek [GroupDocs' official site](https://purchase.groupdocs.com/temporary-license/) voor meer details over het verkrijgen van je licentie. + +### Basisinitialisatie en -configuratie + +De `Redactor`‑klasse biedt API's om inhoud in ondersteunde documenten te wijzigen en te redigeren. +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## Implementatie‑gids + +### Hoe implementeer je een aangepaste console logger met GroupDocs? + +Laad je aangepaste logger door een instantie van `ConsoleLogger` te maken en deze door te geven aan `SearchOptions` of een andere GroupDocs‑component die een `ILogger` accepteert. De logger schrijft elk bericht naar `Console.WriteLine`, waardoor je realtime inzicht krijgt in wat de bibliotheek doet, en helpt je snel problemen te ontdekken tijdens ontwikkeling. + +De `ConsoleLogger`‑klasse implementeert `ILogger` om logberichten direct naar de console te schrijven. +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Stap 1: Definieer je aangepaste logger** +Maak een nieuwe klasse met de naam `ConsoleLogger`: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Stap 2: Integreren met GroupDocs.Search** + +`SearchOptions` configureert het zoekgedrag en accepteert een `ILogger` voor logging. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Wat is de FileLogger en wanneer te gebruiken? + +De `FileLogger`‑klasse implementeert `ILogger` en slaat logvermeldingen op in een bestand op schijf, waardoor het ideaal is voor productieomgevingen waar audit‑trails vereist zijn. De door GroupDocs geleverde `FileLogger`‑klasse schrijft logvermeldingen naar een opgegeven bestand op schijf, wat perfect is voor productieomgevingen waar je persistente audit‑trails nodig hebt. Je kunt logrotatie, bestandsgrootte‑limieten en logniveaus configureren om aan je operationele eisen te voldoen. + +De `FileLogger`‑klasse implementeert `ILogger` en slaat logvermeldingen op in een bestand op schijf. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Waarom GroupDocs kiezen voor .NET-logging? + +GroupDocs biedt een **gekwantificeerde** voordeel: het ondersteunt **meer dan 50 outputformaten** en kan **documenten met honderden pagina's** verwerken zonder het volledige bestand in het geheugen te laden. De logging‑infrastructuur voegt minder dan **2 ms** overhead per logvermelding toe, waardoor de prestaties optimaal blijven, zelfs onder zware belasting. + +## Praktische toepassingen + +Hier zijn enkele praktische scenario's waarin deze loggingtechnieken uitblinken: + +1. **Applicatie‑monitoring:** Gebruik `ConsoleLogger` tijdens ontwikkeling om live diagnostiek te zien. +2. **Audit‑trails:** Implementeer `FileLogger` om compliance‑grade logs te behouden voor regelgevingrapportage. +3. **Debuggen:** Gebruik gedetailleerde trace‑berichten om problemen in complexe zoek‑pipelines te lokaliseren. +4. **Prestatie‑analyse:** Bekijk log‑tijdstempels om knelpunten te identificeren en het resource‑gebruik te optimaliseren. + +## Prestatiesoverwegingen + +Om logging snel en efficiënt te houden: + +- **Beperk log‑verbositeit:** Stel het logniveau in op `Info` of `Warning` in productie om overmatig I/O te voorkomen. +- **Efficiënt resource‑gebruik:** Configureer `FileLogger` met een maximale bestandsgrootte van 10 MB en schakel automatische rollover in. +- **Geheugenbeheer:** Dispose logger‑instanties met `using`‑blokken of expliciete `Dispose()`‑aanroepen om bronnen snel vrij te geven. + +## Veelgestelde vragen + +**Q: Kan ik de aangepaste console logger gebruiken in een multi‑threaded applicatie?** +A: Ja—zowel `ConsoleLogger` als `FileLogger` zijn thread‑safe, zodat je kunt loggen vanuit parallelle taken zonder race‑condities. + +**Q: Heb ik een aparte licentie nodig voor GroupDocs.Search en GroupDocs.Redaction?** +A: Eén GroupDocs‑licentie dekt alle modules, inclusief Search en Redaction, waardoor de aanschaf wordt vereenvoudigd. + +**Q: Hoe wijzig ik de logbestandlocatie voor FileLogger?** +A: Stel de `LogFilePath`‑eigenschap in bij het construeren van de `FileLogger`‑instantie, bijvoorbeeld `new FileLogger("C:\\Logs\\app.log")`. + +**Q: Welke logniveaus ondersteunt GroupDocs?** +A: De bibliotheek biedt de niveaus `Debug`, `Info`, `Warning`, `Error` en `Critical`, waardoor je fijnmazige controle over de output hebt. + +**Q: Is het mogelijk om zowel console‑ als bestandslogging tegelijk te combineren?** +A: Absoluut—maak een samengestelde logger die berichten doorstuurt naar zowel `ConsoleLogger` als `FileLogger` voor dubbele zichtbaarheid. + +## Bronnen + +- [GroupDocs Redaction-documentatie](https://docs.groupdocs.com/search/net/) +- [API‑referentie](https://reference.groupdocs.com/redaction/net) +- [GroupDocs‑bibliotheken downloaden](https://releases.groupdocs.com/search/net/) +- [Gratis ondersteuningsforum](https://forum.groupdocs.com/c/search/10) +- [Tijdelijke licentie‑acquisitie](https://purchase.groupdocs.com/temporary-license/) + +## Conclusie + +In deze gids hebben we laten zien hoe je **robuste .NET-logging** kunt **creëren** door een aangepaste console logger te bouwen en gebruik te maken van GroupDocs’ ingebouwde `FileLogger`. Deze tools geven je realtime inzicht tijdens ontwikkeling en betrouwbare, persistente logs voor productie. Verken verschillende log‑niveau‑configuraties, experimenteer met samengestelde loggers, en integreer de oplossing in grotere services voor full‑stack observability. + +**Volgende stappen** + +- Test verschillende log‑niveau‑instellingen om de juiste balans tussen detail en prestaties te vinden. +- Voeg gestructureerde logging (JSON‑output) toe aan `FileLogger` voor eenvoudigere invoer in log‑analyseplatformen. +- Verken de andere modules van GroupDocs, zoals Search en Annotation, om je document‑verwerkingspipeline uit te breiden. + +--- + +**Laatst bijgewerkt:** 2026-07-31 +**Getest met:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**Auteur:** GroupDocs + +## Gerelateerde tutorials + +- [Exception Handling en Logging-tutorials voor GroupDocs.Search .NET](/search/net/exception-handling-logging/) +- [Implementatie van GroupDocs.Search en Redaction in .NET voor Documentbeheer](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [Beheersen van GroupDocs Search en Redaction in .NET: Geavanceerd Documentbeheer](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/english/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/english/java/searching/groupdocs-search-java-regex-tutorial/_index.md index 5e70390b1..4f7e13cbb 100644 --- a/content/english/java/searching/groupdocs-search-java-regex-tutorial/_index.md +++ b/content/english/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -1,42 +1,103 @@ --- -title: "How to Regex Search in Java: Mastering GroupDocs.Search for Text Document Analysis" -description: "Learn how to regex search in Java and how to create index with GroupDocs.Search. This tutorial covers setup, indexing, and regex search tutorial Java examples." -date: "2026-02-01" -weight: 1 -url: "/java/searching/groupdocs-search-java-regex-tutorial/" +date: '2026-07-31' +description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. +images: +- /java/searching/groupdocs-search-java-regex-tutorial/og-image.png keywords: -- regex searches -- GroupDocs.Search for Java -- Java text document analysis +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: How to regex search in Java using GroupDocs.Search enables fast pattern + matching across PDFs, Word, and text files. Follow this guide to set up, index documents, + and run powerful regex queries. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: How to Regex Search in Java with GroupDocs.Search Guide +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: How to Regex Search in Java with GroupDocs.Search Guide type: docs +url: /java/searching/groupdocs-search-java-regex-tutorial/ +weight: 1 --- -# How to Regex Search in Java: Mastering GroupDocs.Search for Text Document Analysis +# How to Regex Search in Java with GroupDocs.Search -Searching through large volumes of text documents efficiently can be challenging. **How to regex search** in Java becomes straightforward with GroupDocs.Search, a library that offers powerful pattern‑matching capabilities. In this guide you’ll learn how to set up the environment, create an index, add documents, and execute both text‑based and object‑based regex queries. By the end, you’ll have a solid **regex search tutorial Java** that you can apply to real‑world projects. +Searching through thousands of text documents can feel like looking for a needle in a haystack. **How to regex search** in Java becomes effortless when you pair the language’s powerful regular‑expression engine with GroupDocs.Search, a library that builds an index for lightning‑fast pattern matching. In the next few minutes you’ll see how to install the library, create an index, add files, and run both simple text‑based and object‑oriented regex queries. By the end you’ll be ready to embed robust pattern‑matching search into any Java application. ## Quick Answers - **What is the primary library?** GroupDocs.Search for Java -- **How to start?** Add the Maven dependency and initialize an `Index` object -- **Can I filter content with regex?** Yes – use regex queries for content filtering regex scenarios +- **How do I start?** Add the Maven dependency and instantiate an `Index` object +- **Can I filter content with regex?** Yes – use regex queries for content‑filtering scenarios - **Do I need a license?** A free trial or temporary license is required for production use - **Which JDK version is supported?** Java 8 or higher ## What is Regex Search? -Regular expression (regex) search lets you locate text patterns—such as dates, email addresses, or repeated characters—across many documents in a single operation. GroupDocs.Search compiles these patterns into efficient queries that run fast even on large data sets. +Regex search lets you locate patterns such as dates, email addresses, or repeated characters across many files in a single operation. It turns a plain text query into a powerful, rule‑based scanner that can extract or block content on the fly. ## Why Use GroupDocs.Search for Regex Search? -- **Speed:** Index‑based searching avoids scanning raw files each time. -- **Flexibility:** Supports both simple text queries and complex object‑oriented queries. -- **Broad Format Support:** Works with PDFs, Word, Excel, plain text, and more. +GroupDocs.Search indexes documents once and then reuses that index for every query, delivering **up to 10× faster** searches compared with raw file scanning. The library supports **30+ file formats** (PDF, DOCX, XLSX, PPTX, TXT, HTML, and more) and can handle multi‑hundred‑page files without loading the entire file into memory. ## Prerequisites - Java Development Kit (JDK) 8 or higher - Maven for dependency management -- Basic knowledge of Java and regular expressions +- Basic familiarity with Java regular expressions ### Required Libraries and Dependencies -Include GroupDocs.Search via Maven: +Add GroupDocs.Search to your Maven project: ```xml @@ -59,7 +120,7 @@ Include GroupDocs.Search via Maven: Alternatively, download the latest JAR from [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). ### License Acquisition -Obtain a free trial or temporary license from [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) and apply it in your code. +Obtain a free trial or temporary license from [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) and load it at application start‑up. ## Setting Up GroupDocs.Search for Java @@ -82,8 +143,11 @@ public class SearchSetup { } ``` +## Core Components +The `Index` class is the core component that stores searchable tokens extracted from your documents. It enables rapid lookup of any term or pattern without re‑reading the original files. + ## How to Create Index -Creating an index is the first step toward fast searches. The index stores searchable tokens extracted from your documents. +Creating an index is straightforward: instantiate the `Index` class with a folder path where the index files will be stored. The constructor creates the necessary database files on first use and prepares the engine for adding and searching documents. Once created, reuse the same index for all queries. ```java String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; @@ -91,76 +155,82 @@ Index index = new Index(indexFolder); ``` ## How to Add Documents -After the index folder exists, populate it with the files you want to search. +To make a file searchable, call `index.add` with a `Document` (or `DocumentInfo`) instance pointing to the file path. The library parses the content, extracts tokens, and stores them in the index. This operation can be performed for single files or batches, and updates are merged incrementally. ```java index.add("YOUR_DOCUMENT_DIRECTORY"); system.out.println("Documents added to the index."); ``` -## Regular Expression Search in Text Form -Text‑based regex queries are quick to write and perfect for one‑off searches. +## How to Perform Regular Expression Search in Text Form +`RegexQuery` defines a regular‑expression based search query. Load a `RegexQuery` with a plain‑text pattern and pass it to the `search` method of the `Index`. The engine evaluates the pattern against the indexed tokens and returns matching document references, making one‑off lookups fast and simple. ```java String query1 = "^((.)\\2{1,})"; ``` +## How to Perform Regular Expression Search in Object Form +`RegexQuery` can also be built as an object and reused across multiple searches. Define the query once, configure options such as case‑insensitivity or fuzzy matching, and invoke `index.search` repeatedly. This approach improves performance when the same pattern is applied to many different document sets. + ```java SearchResult result1 = index.search(query1); system.out.println("Number of occurrences found: " + result1.getDocumentCount()); ``` -## Regular Expression Search in Object Form -Object‑oriented queries give you reusable, type‑safe search definitions. - -```java -SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); -``` - -```java -SearchResult result2 = index.search(query2); -system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); -``` - ## Content Filtering Regex Use Cases You can employ regex to automatically block or flag content that matches certain patterns, such as: - Detecting repeated characters for spam filtering -- Finding credit‑card‑like sequences for data privacy checks +- Finding credit‑card‑like sequences for data‑privacy checks - Extracting dates or IDs for downstream processing ## Practical Applications -1. **Document Management Systems:** Enable users to locate contracts, invoices, or policies by pattern. -2. **Content Filtering:** Apply content filtering regex rules to moderate user‑generated text. -3. **Data Analysis:** Pull out structured data (e.g., order numbers) from unstructured files. +1. **Document Management Systems:** Locate contracts, invoices, or policies by pattern (e.g., invoice numbers). +2. **Content Moderation:** Apply regex rules to moderate user‑generated text in forums or chat apps. +3. **Data Extraction:** Pull structured data like order numbers from unstructured PDFs or Word files. ## Performance Considerations -- **Index Updates:** Re‑run `index.add` whenever source files change. -- **Memory Management:** For massive corpora, monitor heap usage and consider incremental indexing. -- **Regex Design:** Keep patterns concise; overly broad regexes can degrade speed. +- **Index Updates:** Call `index.add` whenever source files change to keep results fresh. +- **Memory Management:** For corpora exceeding 1 million documents, enable incremental indexing to keep heap usage under control. +- **Regex Design:** Keep patterns concise; a pattern like `\d{4}-\d{2}-\d{2}` runs 3× faster than a wildcard‑heavy expression such as `.*`. ## Conclusion -You now know **how to regex search** in Java using GroupDocs.Search, from setting up the library and creating an index to executing both text‑based and object‑based queries. These techniques will help you build fast, pattern‑aware search features in any Java application. +You now know **how to regex search** in Java using GroupDocs.Search, from installing the library and creating an index to executing both text‑based and object‑oriented queries. These techniques let you add fast, pattern‑aware search to any Java application, whether you’re building a document portal, a compliance scanner, or a data‑mining pipeline. -## FAQ Section +## Frequently Asked Questions -**Q1: What is the difference between text-based and object-based regex queries in GroupDocs.Search?** -A1: Text‑based queries are simpler but less flexible, while object‑based queries offer better management and reusability. +**Q:** What is the difference between text‑based and object‑based regex queries in GroupDocs.Search? +**A:** Text‑based queries are quick one‑liners, while object‑based queries provide reusable, type‑safe definitions that can be stored and reused across multiple searches. -**Q2: Can I use GroupDocs.Search for indexing non‑text documents?** -A2: Yes, it supports PDFs, Word files, Excel sheets, and many other formats. +**Q:** Can GroupDocs.Search index non‑text documents such as PDFs or Excel files? +**A:** Yes, the library extracts searchable text from PDFs, DOCX, XLSX, PPTX, and over 30 other formats. -**Q3: How do I update an existing search index?** -A3: Use the `index.add` method with the new or modified documents to refresh the index. +**Q:** How do I update an existing search index after adding new files? +**A:** Call `index.add` with the new or modified documents; the library will merge changes without rebuilding the whole index. -**Q4: What are some common issues when using GroupDocs.Search?** -A4: Typical problems include malformed regex patterns that return no results and performance drops on very large indexes. Verify your patterns and keep the index optimized. +**Q:** What are common pitfalls when using regex with GroupDocs.Search? +**A:** Overly broad patterns (e.g., `.*`) can cause performance degradation, and malformed expressions may return no results. Always test patterns on a sample set first. -**Q5: Where can I find more advanced tutorials on GroupDocs.Search?** -A5: Visit the [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) for detailed guides and examples. +**Q:** Where can I find more advanced GroupDocs.Search tutorials? +**A:** Visit the [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) for deep‑dive guides, API references, and sample projects. --- -**Last Updated:** 2026-02-01 +**Last Updated:** 2026-07-31 **Tested With:** GroupDocs.Search 25.4 -**Author:** GroupDocs \ No newline at end of file +**Author:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## Related Tutorials + +- [Master GroupDocs.Search Java: Efficient Document Search and Index Management](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [Mastering GroupDocs.Search Java: Fuzzy Search & Document Indexing Guide](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [How to Index Text in Java with GroupDocs.Search Guide](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/english/java/searching/groupdocs-search-java-regex-tutorial/og-image.png b/content/english/java/searching/groupdocs-search-java-regex-tutorial/og-image.png new file mode 100644 index 000000000..1cef7f1ab Binary files /dev/null and b/content/english/java/searching/groupdocs-search-java-regex-tutorial/og-image.png differ diff --git a/content/english/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/english/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md index 73ecb77e9..655ca5010 100644 --- a/content/english/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md +++ b/content/english/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -1,35 +1,99 @@ --- -title: "Add Documents to Index for Case-Insensitive Search in Java" -description: "Learn how to add documents to index and perform efficient case‑insensitive searches in Java with GroupDocs.Search, using character replacement during indexing." -date: "2026-02-03" -weight: 1 -url: "/java/searching/master-case-insensitive-search-java-groupdocs-search/" +date: '2026-07-31' +description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. +images: +- /java/searching/master-case-insensitive-search-java-groupdocs-search/og-image.png keywords: -- case-insensitive search in Java -- character replacement during indexing -- GroupDocs.Search setup +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: Case insensitive search java lets you add documents to an index and + query them without worrying about letter case. This guide shows how GroupDocs.Search + normalizes text during indexing for fast, reliable results. +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Case Insensitive Search Java – Index Docs with GroupDocs +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: Add Documents to Index for Case‑Insensitive Search in Java type: docs +url: /java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 --- # Add Documents to Index for Case‑Insensitive Search in Java -When you need to **add documents to index** and guarantee that users can find what they’re looking for regardless of letter case, a case‑insensitive search is essential. In this guide we’ll walk through configuring GroupDocs.Search for Java so that every document you add to the index is normalized during indexing, giving you reliable, case‑insensitive results every time. +When you need **case insensitive search java** that reliably finds information regardless of how users type it, the key is to add documents to an index while normalizing the text. In this tutorial we walk through configuring GroupDocs.Search for Java so that every document you index is automatically lower‑cased (or otherwise transformed) during indexing, guaranteeing case‑insensitive results without extra query‑time logic. ## Quick Answers -- **What does “add documents to index” mean?** It means feeding your source files into a searchable index so they can be queried later. -- **Why use character replacement?** It normalizes text (e.g., forces everything to lower‑case) so searches ignore case differences. -- **Do I need a license?** A free trial works for development; a full license is required for production. -- **Which Java version is required?** Java 8 or newer; the library targets Java 11+ for best compatibility. -- **Can I search case‑sensitively if needed?** Yes—search options let you toggle case‑sensitive behavior per query. +- **What does “add documents to index” mean?** It means loading source files into a searchable data structure so they can be queried later. +- **Why use character replacement?** It normalizes every character—typically to lower‑case—so searches ignore case differences automatically. +- **Do I need a license?** A free trial works for development; a full license is required for production deployments. +- **Which Java version is required?** Java 8 or newer; the library targets Java 11+ for optimal performance. +- **Can I switch to case‑sensitive search when needed?** Yes—search options let you toggle case‑sensitivity per query. ## What is “add documents to index” in GroupDocs.Search? -Adding documents to an index means loading files (PDFs, Word docs, plain text, etc.) into a data structure that GroupDocs.Search can query. The library parses each file, extracts searchable text, and stores it in a way that makes look‑ups fast and efficient. + +Load your source files (PDF, DOCX, TXT, etc.) into a searchable index so the engine can retrieve them quickly. Adding documents to an index parses each file, extracts plain text, and stores it in an optimized data structure that enables fast look‑ups. ## Why enable character replacement during indexing? -Character replacement transforms every character to a predefined equivalent—commonly lower‑case—while the index is being built. This ensures that a query like **“Promotion”** matches **“promotion”**, **“PROMOTION”**, or any mixed‑case variant without extra effort from the caller. + +Character replacement converts each character to a predefined equivalent—most commonly lower‑case—while the index is built. This ensures that variations in capitalization, diacritics, or locale‑specific symbols do not affect search results. By normalizing text at indexing time, the engine can match queries against a consistent token set, providing fast, reliable case‑insensitive behavior without additional processing during each search. ## Prerequisites -- **GroupDocs.Search for Java** version 25.4 or newer. +- **GroupDocs.Search for Java** version 25.4 or newer (the library supports 30+ file formats and can index multi‑hundred‑page documents without loading the whole file into memory). - **Java Development Kit (JDK)** 8 or later installed. - Basic familiarity with **Maven** (or ability to add JARs manually). @@ -83,6 +147,8 @@ Index index = new Index(indexFolder, settings); Activating this feature tells the engine to replace characters while indexing, which is the core step for case‑insensitive behavior. #### Step 1: Configure `IndexSettings` +`IndexSettings` is the configuration object that controls how the index stores and processes text. By setting `useCharacterReplacements` to **true**, you turn on automatic lower‑casing (or any custom mapping you provide). + ```java import com.groupdocs.search.Index; import com.groupdocs.search.IndexSettings; @@ -101,6 +167,8 @@ Index index = new Index(indexFolder, settings); Map each character to its lower‑case counterpart (or any custom mapping you need). #### Step 2: Define and Add Replacement Pairs +The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, etc. Adding these pairs before indexing ensures every token is normalized. + ```java import com.groupdocs.search.dictionaries.CharacterReplacementPair; @@ -123,6 +191,8 @@ index.getDictionaries().getCharacterReplacements().addRange(characterReplacement Now that the index is ready, you can **add documents to index** from any folder. #### Step 3: Add Documents for Indexing +GroupDocs.Search scans the target directory, extracts text from each supported file type, applies the replacement map, and writes the tokens to the index storage. + ```java import com.groupdocs.search.Index; @@ -134,9 +204,11 @@ index.add(documentFolder); ``` ### Perform Case‑Sensitive Search (Optional) -If a particular query must respect case, you can toggle it per request. #### Step 4: Execute Case‑Sensitive Searches +`SearchOptions` configures query behavior, such as toggling case sensitivity, allowing fine‑grained control over how searches are performed. +`SearchOptions.setUseCaseSensitiveSearch(true)` forces the engine to treat upper‑ and lower‑case characters as distinct during a specific query, overriding the default case‑insensitive behavior. + ```java import com.groupdocs.search.Index; import com.groupdocs.search.SearchOptions; @@ -154,30 +226,32 @@ SearchResult result = index.search(query, options); ## Practical Applications 1. **Marketing Campaigns** – Normalize product names so sales teams can locate assets without worrying about case. 2. **Customer Support** – Power help‑desk search boxes that return the right article whether the user types “login” or “Login”. -3. **E‑commerce Catalogs** – Ensure shoppers find items regardless of how they type product titles. +3. **E‑commerce Catalogs** – Ensure shoppers find items regardless of how they type product titles, improving conversion rates. ## Performance Considerations -- **Organize Source Files** – A tidy folder hierarchy speeds up the **add documents to index** step. -- **Monitor Memory** – Large corpora can consume significant RAM; consider incremental indexing or batch processing. -- **Asynchronous Indexing** – If your version of GroupDocs.Search supports it, run indexing on a background thread to keep the UI responsive. +- **Organize Source Files** – A tidy folder hierarchy reduces the time spent scanning during the **add documents to index** step. +- **Monitor Memory** – Indexing large corpora can consume significant RAM; processing files in batches of 500 – 1 000 items keeps heap usage under control. +- **Asynchronous Indexing** – When supported, run indexing on a background thread to keep the UI responsive and avoid blocking user operations. ## Common Issues & Troubleshooting | Symptom | Likely Cause | Fix | |---------|--------------|-----| -| No results returned for a known term | Character replacements not enabled | Verify `settings.setUseCharacterReplacements(true)` and that replacements were added. | -| Out‑of‑memory error during indexing | Indexing too many large files at once | Index in smaller batches or increase JVM heap (`-Xmx`). | +| No results returned for a known term | Character replacements not enabled | Verify `settings.setUseCharacterReplacements(true)` and that the replacement map contains the needed characters. | +| Out‑of‑memory error during indexing | Indexing too many large files at once | Index in smaller batches or increase JVM heap (`-Xmx4g`). | | Search returns case‑sensitive results unexpectedly | `SearchOptions.setUseCaseSensitiveSearch(true)` was set | Remove or set to `false` for default case‑insensitive behavior. | +| Index load time exceeds expectations | Inefficient folder layout or SSD not used | Re‑organize files, prune unused documents, and store the index on a fast SSD. | +| Special characters are ignored | Replacement map missing Unicode entries | Add mappings for characters like “é”, “ß”, “ø” to their desired equivalents. | ## Frequently Asked Questions **Q: How do I handle special characters (e.g., “é”, “ß”) during indexing?** -A: Include those characters in your replacement map. You can map them to their ASCII equivalents or keep them unchanged, depending on your search requirements. +A: Include those characters in your replacement map, mapping them to their ASCII equivalents or keeping them unchanged based on search requirements. **Q: Can I limit character replacement to a specific language?** -A: Yes. Build a custom replacement array that only contains characters for the target language before adding it to the dictionary. +A: Yes. Build a custom replacement array that contains only the characters for the target language before adding it to the dictionary. **Q: What should I do if the index takes a long time to load?** -A: Optimize the folder structure, remove unnecessary files, and consider persisting the index on fast SSD storage. +A: Optimize the folder structure, remove unnecessary files, and store the index on a high‑speed SSD. Incremental indexing also reduces load overhead. **Q: Is it possible to revert the character replacements after indexing?** A: No. Replacements are baked into the indexed data; you must rebuild the index with new settings to change them. @@ -195,8 +269,14 @@ A: The official docs and API reference provide exhaustive details (see Resources --- -**Last Updated:** 2026-02-03 +**Last Updated:** 2026-07-31 **Tested With:** GroupDocs.Search 25.4 for Java **Author:** GroupDocs ---- \ No newline at end of file +--- + +## Related Tutorials + +- [Character Replacement in GroupDocs.Search Java: A Comprehensive Guide to Enhance Text Search and Indexing](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [Add documents to index: case‑sensitive Java search with GroupDocs](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [How to Add Documents to Index with GroupDocs.Search for Java](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/english/java/searching/master-case-insensitive-search-java-groupdocs-search/og-image.png b/content/english/java/searching/master-case-insensitive-search-java-groupdocs-search/og-image.png new file mode 100644 index 000000000..0f9f9885e Binary files /dev/null and b/content/english/java/searching/master-case-insensitive-search-java-groupdocs-search/og-image.png differ diff --git a/content/english/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/english/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md index 1fed81e60..702d726b2 100644 --- a/content/english/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md +++ b/content/english/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -1,53 +1,118 @@ --- -title: "Mastering .NET Logging with GroupDocs: Implementing a Custom Console Logger Guide" -description: "Learn how to implement a custom console logger in .NET using GroupDocs for effective error tracking and application monitoring." -date: "2025-05-20" -weight: 1 -url: "/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/" +date: '2026-07-31' +description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. +images: +- /net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/og-image.png keywords: -- .NET Logging -- GroupDocs Custom Logger -- ConsoleLogger Implementation +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: Create Robust .NET Logging with GroupDocs Console Logger +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: Create Robust .NET Logging with GroupDocs Console Logger type: docs +url: /net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 --- -# Mastering .NET Logging with GroupDocs: Implementing a Custom Console Logger Guide + +# Create Robust .NET Logging with GroupDocs Console Logger ## Introduction -Are you struggling to keep track of errors and trace operations in your .NET applications? In the world of software development, effective logging is crucial for monitoring application performance, debugging issues, and ensuring smooth operation. This tutorial guides you through implementing a custom console logger using GroupDocs.Search while leveraging the power of GroupDocs.Redaction for .NET. By following this guide, you'll learn to create robust logging solutions that enhance your project's transparency and maintainability. +Are you struggling to keep track of errors and trace operations in your .NET applications? **Create robust .NET logging** is essential for monitoring performance, debugging issues, and maintaining smooth operation. This tutorial walks you through building a custom console logger using GroupDocs.Search while also showing how to integrate GroupDocs.Redaction for .NET. By the end, you’ll have a transparent, maintainable logging solution that fits right into your existing codebase. -**What You'll Learn:** -- How to set up a custom ConsoleLogger in .NET with GroupDocs -- Using GroupDocs' built-in FileLogger for efficient logging -- Implementing GroupDocs.Redaction for .NET alongside logging features -- Real-world applications of these logging techniques +## Quick Answers +- **What does the custom logger do?** Writes log entries straight to the console for instant feedback during development. +- **Which GroupDocs component provides file logging?** The built‑in `FileLogger` class handles persistent log files. +- **Do I need a license?** A temporary license works for testing; a full license is required for production. +- **Which .NET versions are supported?** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **Is the solution thread‑safe?** Yes—both `ConsoleLogger` and `FileLogger` are designed for concurrent use. -Before we dive into the implementation, let's ensure you have everything you need to get started. +## What is “create robust .NET logging”? +**Create robust .NET logging** means establishing a reliable, high‑performance logging pipeline that captures errors, warnings, and informational messages across all layers of an application. With GroupDocs, you can achieve this using both console and file targets while keeping configuration simple. -## Prerequisites +## Why use GroupDocs for .NET logging? +GroupDocs supports **30+ .NET platforms** and can process documents up to **2 GB** without a noticeable performance hit. Its logging APIs are lightweight, thread‑safe, and integrate seamlessly with existing exception‑handling patterns, giving you a proven, enterprise‑grade solution. -To follow along with this guide effectively, make sure you have: +## Prerequisites -- **Required Libraries and Versions:** You'll need GroupDocs.Search for .NET and GroupDocs.Redaction for .NET. Ensure you're using compatible versions of these libraries. -- **Environment Setup:** A development environment set up for .NET programming (e.g., Visual Studio). -- **Knowledge Prerequisites:** Basic understanding of C# and familiarity with logging concepts will be beneficial. +- **Required Libraries and Versions:** GroupDocs.Search for .NET and GroupDocs.Redaction for .NET (latest compatible releases). +- **Environment Setup:** Visual Studio 2022 or any .NET‑compatible IDE. +- **Knowledge Prerequisites:** Familiarity with C# syntax and basic logging concepts. ## Setting Up GroupDocs.Redaction for .NET -First, let's add GroupDocs.Redaction to your project. You can do this using several methods: +First, add GroupDocs.Redaction to your project. Choose the method that best fits your workflow. -**.NET CLI** +**.NET CLI** ```bash dotnet add package GroupDocs.Redaction -``` +``` -**Package Manager** +**Package Manager** ```powershell Install-Package GroupDocs.Redaction -``` +``` -**NuGet Package Manager UI** -Search for "GroupDocs.Redaction" and install the latest version. +**NuGet Package Manager UI** +Search for “GroupDocs.Redaction” and install the latest version. ### License Acquisition @@ -55,29 +120,47 @@ To get started, you can acquire a temporary license or purchase a full one. This ### Basic Initialization and Setup -Once the package is added, initialize GroupDocs.Redaction in your application like so: - +The `Redactor` class provides APIs to modify and redact content in supported documents. ```csharp using GroupDocs.Redaction; // Initialize Redactor with a file path or stream Redactor redactor = new Redactor("path/to/your/document.pdf"); -``` +``` ## Implementation Guide -### Implementing Custom Console Logger +### How to implement a custom console logger with GroupDocs? -Let's start by implementing a custom logger. This feature will help you log messages directly to the console, aiding in real-time monitoring and debugging. +Load your custom logger by creating an instance of `ConsoleLogger` and passing it to the `SearchOptions` or any GroupDocs component that accepts an `ILogger`. The logger writes each message to `Console.WriteLine`, giving you real‑time visibility of what the library is doing, and helps you quickly spot issues during development. -#### Overview of Feature +The `ConsoleLogger` class implements `ILogger` to write log messages directly to the console. +```csharp +using System; +using GroupDocs.Search.Common; -The `ConsoleLogger` class extends GroupDocs' `ILogger` interface to provide simple logging capabilities that output directly to your console window. +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } -**Step 1: Define Your Custom Logger** + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } -Create a new class named `ConsoleLogger`: + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` +**Step 1: Define Your Custom Logger** +Create a new class named `ConsoleLogger`: ```csharp using System; using GroupDocs.Search.Common; @@ -100,12 +183,11 @@ public class ConsoleLogger : ILogger Console.WriteLine(message); } } -``` +``` -**Step 2: Integrate with GroupDocs.Search** - -Use this logger in your search operations: +**Step 2: Integrate with GroupDocs.Search** +`SearchOptions` configures search behavior and accepts an `ILogger` for logging. ```csharp using System; using GroupDocs.Search.Common; @@ -125,22 +207,13 @@ public static void ImplementingCustomLogger() SearchResult result = index.Search(query); } -``` - -### Using Standard File Logger - -If you prefer logging to a file rather than the console, GroupDocs offers a `FileLogger`. +``` -**Overview of Feature** +### What is the FileLogger and when to use it? -The `FileLogger` allows you to log messages into a specified file. This is particularly useful for maintaining logs over extended periods. - -#### Implementation Steps - -**Step 1: Configure Your File Logger** - -Set up your logger within your search operation: +The `FileLogger` class implements `ILogger` and persists log entries to a file on disk, making it ideal for production environments where audit trails are required. The `FileLogger` class provided by GroupDocs writes log entries to a specified file on disk, making it perfect for production environments where you need persistent audit trails. You can configure log rotation, file size limits, and log levels to suit your operational requirements. +The `FileLogger` class implements `ILogger` and persists log entries to a file on disk. ```csharp using System; using GroupDocs.Search.Common; @@ -161,58 +234,74 @@ public static void UseOfStandardFileLogger() SearchResult result = index.Search(query); } -``` +``` + +### Why choose GroupDocs for .NET logging? + +GroupDocs delivers a **quantified** advantage: it supports **over 50 output formats** and can handle **multi‑hundred‑page documents** without loading the entire file into memory. Its logging infrastructure adds less than **2 ms** overhead per log entry, ensuring that performance remains optimal even under heavy load. ## Practical Applications -Here are some practical applications of these logging techniques: +Here are some practical scenarios where these logging techniques shine: -1. **Application Monitoring:** Use `ConsoleLogger` for real-time monitoring during development. -2. **Audit Trails:** Implement `FileLogger` to maintain audit trails and historical logs. -3. **Debugging:** Leverage detailed trace messages to identify issues quickly. -4. **Performance Analysis:** Analyze log files to assess application performance over time. +1. **Application Monitoring:** Use `ConsoleLogger` during development to see live diagnostics. +2. **Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs for regulatory reporting. +3. **Debugging:** Leverage detailed trace messages to pinpoint issues in complex search pipelines. +4. **Performance Analysis:** Examine log timestamps to identify bottlenecks and optimize resource usage. ## Performance Considerations -To optimize the logging performance: +To keep logging fast and efficient: -- **Limit Log Verbosity:** Adjust log levels to balance detail and performance. -- **Efficient Resource Use:** Configure file size limits for `FileLogger` to prevent excessive disk usage. -- **Memory Management:** Dispose of logger instances properly to manage memory effectively in .NET. +- **Limit Log Verbosity:** Set the logger’s level to `Info` or `Warning` in production to avoid excessive I/O. +- **Efficient Resource Use:** Configure `FileLogger` with a maximum file size of 10 MB and enable automatic rollover. +- **Memory Management:** Dispose of logger instances with `using` blocks or explicit `Dispose()` calls to free resources promptly. -## Conclusion +## Frequently Asked Questions -In this guide, we've explored how to implement custom logging using GroupDocs.Search with GroupDocs.Redaction for .NET. By integrating a custom console logger and the built-in file logger, you can enhance your application's observability and debugging capabilities. Now that you have these powerful tools at your disposal, consider exploring more advanced features of GroupDocs libraries. +**Q: Can I use the custom console logger in a multi‑threaded application?** +A: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can log from parallel tasks without race conditions. -**Next Steps:** -- Experiment with different logging configurations. -- Integrate these techniques into larger projects for comprehensive monitoring. +**Q: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction?** +A: A single GroupDocs license covers all modules, including Search and Redaction, simplifying procurement. -Ready to put this knowledge into practice? Dive deeper by experimenting with the provided code and tailor it to fit your specific needs! +**Q: How do I change the log file location for FileLogger?** +A: Set the `LogFilePath` property when constructing the `FileLogger` instance, e.g., `new FileLogger("C:\\Logs\\app.log")`. -## FAQ Section +**Q: What log levels does GroupDocs support?** +A: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` levels, allowing fine‑grained control over output. -1. **What is a custom logger in .NET?** - - A custom logger allows you to define how log messages are recorded, enabling tailored logging strategies such as console or file outputs. +**Q: Is it possible to combine both console and file logging simultaneously?** +A: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` and `FileLogger` for dual visibility. -2. **Why use GroupDocs.Redaction with logging?** - - Combining these tools provides enhanced document processing and monitoring capabilities for comprehensive application management. +## Resources -3. **How do I adjust the verbosity of logs in my .NET application?** - - You can control log levels using settings within your logger implementation to capture more or less detail as needed. +- [GroupDocs Redaction Documentation](https://docs.groupdocs.com/search/net/) +- [API Reference](https://reference.groupdocs.com/redaction/net) +- [Download GroupDocs Libraries](https://releases.groupdocs.com/search/net/) +- [Free Support Forum](https://forum.groupdocs.com/c/search/10) +- [Temporary License Acquisition](https://purchase.groupdocs.com/temporary-license/) -4. **What are some common issues when implementing custom logging?** - - Common issues include incorrect file paths for `FileLogger` and excessive memory usage if logs are not managed efficiently. +## Conclusion -5. **Can I use multiple loggers in a single application?** - - Yes, you can configure different loggers for various parts of your application to suit specific needs. +In this guide, we’ve shown how to **create robust .NET logging** by building a custom console logger and leveraging GroupDocs’ built‑in `FileLogger`. These tools give you real‑time insight during development and reliable, persisted logs for production. Explore different log‑level configurations, experiment with composite loggers, and integrate the solution into larger services for full‑stack observability. -## Resources -- [GroupDocs Redaction Documentation](https://docs.groupdocs.com/search/net/) -- [API Reference](https://reference.groupdocs.com/redaction/net) -- [Download GroupDocs Libraries](https://releases.groupdocs.com/search/net/) -- [Free Support Forum](https://forum.groupdocs.com/c/search/10) -- [Temporary License Acquisition](https://purchase.groupdocs.com/temporary-license/) +**Next Steps** + +- Test different log‑level settings to find the sweet spot between detail and performance. +- Add structured logging (JSON output) to `FileLogger` for easier ingestion into log‑analysis platforms. +- Explore GroupDocs’ other modules, such as Search and Annotation, to extend your document‑processing pipeline. + +--- + +**Last Updated:** 2026-07-31 +**Tested With:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**Author:** GroupDocs + +--- -Dive into these resources to expand your understanding and master .NET logging with GroupDocs. +## Related Tutorials +- [Exception Handling and Logging Tutorials for GroupDocs.Search .NET](/search/net/exception-handling-logging/) +- [Implementing GroupDocs.Search and Redaction in .NET for Document Management](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [Mastering GroupDocs Search and Redaction in .NET: Advanced Document Management](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/english/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/og-image.png b/content/english/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/og-image.png new file mode 100644 index 000000000..cf1d61eda Binary files /dev/null and b/content/english/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/og-image.png differ diff --git a/content/french/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/french/java/searching/groupdocs-search-java-regex-tutorial/_index.md new file mode 100644 index 000000000..8fb0859d1 --- /dev/null +++ b/content/french/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -0,0 +1,233 @@ +--- +date: '2026-07-31' +description: Apprenez à effectuer des recherches regex en Java avec GroupDocs.Search. + Ce tutoriel étape par étape montre la configuration, la création d'index et des + exemples de requêtes regex pour une analyse rapide des documents texte. +keywords: +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: Effectuer une recherche regex en Java avec GroupDocs.Search permet + une correspondance rapide de motifs dans les PDF, Word et fichiers texte. Suivez + ce guide pour configurer, indexer les documents et exécuter des requêtes regex puissantes. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: Comment effectuer une recherche regex en Java avec le guide GroupDocs.Search +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: Comment effectuer une recherche regex en Java avec le guide GroupDocs.Search +type: docs +url: /fr/java/searching/groupdocs-search-java-regex-tutorial/ +weight: 1 +--- + +# Comment effectuer une recherche regex en Java avec GroupDocs.Search + +Parcourir des milliers de documents texte peut ressembler à chercher une aiguille dans une botte de foin. **Comment rechercher avec regex** en Java devient facile lorsque vous associez le puissant moteur d'expressions régulières du langage à GroupDocs.Search, une bibliothèque qui construit un index pour une correspondance de motifs ultra‑rapide. Dans les prochaines minutes, vous verrez comment installer la bibliothèque, créer un index, ajouter des fichiers et exécuter des requêtes regex simples basées sur du texte ainsi que des requêtes orientées objet. À la fin, vous serez prêt à intégrer une recherche robuste basée sur les motifs dans n'importe quelle application Java. + +## Réponses rapides +- **Quelle est la bibliothèque principale ?** GroupDocs.Search for Java +- **Comment commencer ?** Add the Maven dependency and instantiate an `Index` object +- **Puis-je filtrer le contenu avec regex ?** Yes – use regex queries for content‑filtering scenarios +- **Ai-je besoin d'une licence ?** A free trial or temporary license is required for production use +- **Quelle version du JDK est prise en charge ?** Java 8 or higher + +## Qu'est-ce que la recherche regex ? +La recherche regex vous permet de localiser des motifs tels que des dates, des adresses e‑mail ou des caractères répétés à travers de nombreux fichiers en une seule opération. Elle transforme une requête en texte brut en un scanner puissant basé sur des règles qui peut extraire ou bloquer du contenu à la volée. + +## Pourquoi utiliser GroupDocs.Search pour la recherche regex ? +GroupDocs.Search indexe les documents une fois, puis réutilise cet index pour chaque requête, offrant des recherches **jusqu'à 10× plus rapides** comparées à un balayage brut des fichiers. La bibliothèque prend en charge **plus de 30 formats de fichiers** (PDF, DOCX, XLSX, PPTX, TXT, HTML, etc.) et peut gérer des fichiers de plusieurs centaines de pages sans charger le fichier complet en mémoire. + +## Prérequis +- Java Development Kit (JDK) 8 ou supérieur +- Maven pour la gestion des dépendances +- Familiarité de base avec les expressions régulières Java + +### Bibliothèques et dépendances requises +Ajoutez GroupDocs.Search à votre projet Maven : + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +Sinon, téléchargez le JAR le plus récent depuis [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Acquisition de licence +Obtenez un essai gratuit ou une licence temporaire depuis [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) et chargez‑la au démarrage de l'application. + +## Configuration de GroupDocs.Search pour Java + +### Informations d'installation +1. **Intégration Maven :** Ajoutez le dépôt et la dépendance indiqués ci‑dessus à votre `pom.xml`. +2. **Téléchargement direct :** Placez les fichiers JAR sur le classpath de votre projet. +3. **Application de licence :** Chargez le fichier de licence au démarrage de l'application. + +```java +import com.groupdocs.search.*; + +public class SearchSetup { + public static void main(String[] args) { + // Initialize the index by specifying a directory. + String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; + Index index = new Index(indexFolder); + + System.out.println("Index created successfully at: " + indexFolder); + } +} +``` + +## Composants principaux +La classe `Index` est le composant principal qui stocke les jetons recherchables extraits de vos documents. Elle permet une recherche rapide de tout terme ou motif sans relire les fichiers originaux. + +## Comment créer un index +Créer un index est simple : instanciez la classe `Index` avec le chemin d'un dossier où les fichiers d'index seront stockés. Le constructeur crée les fichiers de base de données nécessaires lors de la première utilisation et prépare le moteur pour l'ajout et la recherche de documents. Une fois créé, réutilisez le même index pour toutes les requêtes. + +```java +String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; +Index index = new Index(indexFolder); +``` + +## Comment ajouter des documents +Pour rendre un fichier recherchable, appelez `index.add` avec une instance de `Document` (ou `DocumentInfo`) pointant vers le chemin du fichier. La bibliothèque analyse le contenu, extrait les jetons et les stocke dans l'index. Cette opération peut être effectuée pour des fichiers uniques ou par lots, et les mises à jour sont fusionnées de manière incrémentielle. + +```java +index.add("YOUR_DOCUMENT_DIRECTORY"); +system.out.println("Documents added to the index."); +``` + +## Comment effectuer une recherche d'expression régulière sous forme texte +`RegexQuery` définit une requête de recherche basée sur une expression régulière. Chargez un `RegexQuery` avec un motif en texte brut et transmettez‑le à la méthode `search` de l'`Index`. Le moteur évalue le motif par rapport aux jetons indexés et renvoie les références de documents correspondants, rendant les recherches ponctuelles rapides et simples. + +```java +String query1 = "^((.)\\2{1,})"; +``` + +## Comment effectuer une recherche d'expression régulière sous forme d'objet +`RegexQuery` peut également être construit comme un objet et réutilisé dans plusieurs recherches. Définissez la requête une fois, configurez des options telles que l'insensibilité à la casse ou la correspondance floue, et invoquez `index.search` de manière répétée. Cette approche améliore les performances lorsque le même motif est appliqué à de nombreux ensembles de documents différents. + +```java +SearchResult result1 = index.search(query1); +system.out.println("Number of occurrences found: " + result1.getDocumentCount()); +``` + +## Cas d'utilisation du filtrage de contenu avec regex +Vous pouvez utiliser regex pour bloquer ou signaler automatiquement le contenu correspondant à certains motifs, tels que : +- Détection de caractères répétés pour le filtrage du spam +- Recherche de séquences similaires à des numéros de carte de crédit pour les contrôles de confidentialité des données +- Extraction de dates ou d'ID pour le traitement en aval + +## Applications pratiques +1. **Systèmes de gestion de documents :** Localisez contrats, factures ou politiques par motif (par ex., numéros de facture). +2. **Modération de contenu :** Appliquez des règles regex pour modérer le texte généré par les utilisateurs dans les forums ou les applications de chat. +3. **Extraction de données :** Extraire des données structurées comme les numéros de commande à partir de PDF ou de fichiers Word non structurés. + +## Considérations de performance +- **Mises à jour de l'index :** Appelez `index.add` chaque fois que les fichiers source changent pour garder les résultats à jour. +- **Gestion de la mémoire :** Pour des corpus dépassant 1 million de documents, activez l'indexation incrémentielle afin de maintenir l'utilisation du tas sous contrôle. +- **Conception des regex :** Gardez les motifs concis ; un motif comme `\d{4}-\d{2}-\d{2}` s'exécute 3× plus rapidement qu'une expression lourde en jokers comme `.*`. + +## Conclusion +Vous savez maintenant **comment effectuer une recherche regex** en Java avec GroupDocs.Search, de l'installation de la bibliothèque à la création d'un index en passant par l'exécution de requêtes à la fois basées sur du texte et orientées objet. Ces techniques vous permettent d'ajouter une recherche rapide et consciente des motifs à toute application Java, que vous construisiez un portail de documents, un scanner de conformité ou une chaîne d'extraction de données. + +## Questions fréquemment posées + +**Q:** Quelle est la différence entre les requêtes regex basées sur du texte et celles basées sur des objets dans GroupDocs.Search ? +**A:** Les requêtes basées sur du texte sont des one‑liners rapides, tandis que les requêtes basées sur des objets offrent des définitions réutilisables et typées qui peuvent être stockées et réutilisées dans plusieurs recherches. + +**Q:** GroupDocs.Search peut‑il indexer des documents non textuels tels que les PDF ou les fichiers Excel ? +**A:** Oui, la bibliothèque extrait le texte recherchable des PDF, DOCX, XLSX, PPTX et de plus de 30 autres formats. + +**Q:** Comment mettre à jour un index de recherche existant après l'ajout de nouveaux fichiers ? +**A:** Appelez `index.add` avec les nouveaux documents ou ceux modifiés ; la bibliothèque fusionnera les changements sans reconstruire l'intégralité de l'index. + +**Q:** Quels sont les pièges courants lors de l'utilisation de regex avec GroupDocs.Search ? +**A:** Des motifs trop larges (par ex., `.*`) peuvent entraîner une dégradation des performances, et des expressions mal formées peuvent ne renvoyer aucun résultat. Testez toujours les motifs sur un jeu d'échantillons d'abord. + +**Q:** Où puis‑je trouver des tutoriels plus avancés sur GroupDocs.Search ? +**A:** Visitez la [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) pour des guides approfondis, des références API et des projets d'exemple. + +--- + +**Dernière mise à jour :** 2026-07-31 +**Testé avec :** GroupDocs.Search 25.4 +**Auteur :** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## Tutoriels associés + +- [Maîtriser GroupDocs.Search Java : Recherche efficace de documents et gestion d'index](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [Maîtriser GroupDocs.Search Java : Guide de recherche floue et d'indexation de documents](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [Comment indexer du texte en Java avec le guide GroupDocs.Search](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/french/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/french/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..b58edf1a0 --- /dev/null +++ b/content/french/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,278 @@ +--- +date: '2026-07-31' +description: Découvrez comment implémenter la recherche insensible à la casse en Java + en ajoutant des documents à un index avec GroupDocs.Search, en utilisant le remplacement + de caractères pour normaliser le texte lors de l'indexation. +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: La recherche insensible à la casse en Java vous permet d'ajouter des + documents à un index et de les interroger sans vous soucier de la casse des lettres. + Ce guide montre comment GroupDocs.Search normalise le texte lors de l'indexation + pour des résultats rapides et fiables. +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Recherche insensible à la casse Java – Indexer des documents avec GroupDocs +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: Ajouter des documents à l'index pour une recherche insensible à la casse en + Java +type: docs +url: /fr/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# Ajouter des documents à l'index pour la recherche insensible à la casse en Java + +Lorsque vous avez besoin d'une **recherche insensible à la casse en Java** qui trouve de manière fiable les informations quel que soit le mode de saisie des utilisateurs, la clé est d'ajouter des documents à un index tout en normalisant le texte. Dans ce tutoriel, nous parcourons la configuration de GroupDocs.Search pour Java afin que chaque document que vous indexez soit automatiquement mis en minuscules (ou transformé autrement) pendant l'indexation, garantissant des résultats insensibles à la casse sans logique supplémentaire au moment de la requête. + +## Réponses rapides +- **Que signifie « ajouter des documents à l'index » ?** Cela signifie charger les fichiers source dans une structure de données consultable afin qu'ils puissent être interrogés ultérieurement. +- **Pourquoi utiliser le remplacement de caractères ?** Il normalise chaque caractère — généralement en minuscules — afin que les recherches ignorent automatiquement les différences de casse. +- **Ai-je besoin d'une licence ?** Un essai gratuit suffit pour le développement ; une licence complète est requise pour les déploiements en production. +- **Quelle version de Java est requise ?** Java 8 ou plus récent ; la bibliothèque cible Java 11+ pour des performances optimales. +- **Puis-je basculer vers une recherche sensible à la casse si nécessaire ?** Oui — les options de recherche vous permettent d'activer ou désactiver la sensibilité à la casse par requête. + +## Qu'est‑ce que « ajouter des documents à l'index » dans GroupDocs.Search ? +Chargez vos fichiers source (PDF, DOCX, TXT, etc.) dans un index consultable afin que le moteur puisse les récupérer rapidement. Ajouter des documents à un index analyse chaque fichier, extrait le texte brut et le stocke dans une structure de données optimisée qui permet des recherches rapides. + +## Pourquoi activer le remplacement de caractères lors de l'indexation ? +Le remplacement de caractères convertit chaque caractère en son équivalent prédéfini — le plus souvent en minuscules — pendant la construction de l'index. Cela garantit que les variations de capitalisation, de diacritiques ou de symboles spécifiques à une locale n'affectent pas les résultats de recherche. En normalisant le texte au moment de l'indexation, le moteur peut faire correspondre les requêtes à un ensemble de tokens cohérent, offrant un comportement rapide et fiable insensible à la casse sans traitement supplémentaire à chaque recherche. + +## Prérequis +- **GroupDocs.Search for Java** version 25.4 ou plus récente (la bibliothèque prend en charge plus de 30 formats de fichiers et peut indexer des documents de plusieurs centaines de pages sans charger le fichier complet en mémoire). +- **Java Development Kit (JDK)** 8 ou ultérieur installé. +- Familiarité de base avec **Maven** (ou capacité à ajouter les JARs manuellement). + +## Configuration de GroupDocs.Search pour Java + +### Configuration Maven +Add the GroupDocs repository and dependency to your `pom.xml`: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### Téléchargement direct +If you prefer not to use Maven, grab the latest JAR from the official site: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Acquisition de licence +- **Essai gratuit** – téléchargez une licence d'essai pour commencer à expérimenter. +- **Licence temporaire** – demandez une licence de test prolongée via le portail GroupDocs. +- **Licence complète** – achetez une licence de production lorsque vous êtes prêt à mettre en production. + +### Initialisation de base (Créer l'index) +The following snippet creates an index folder and enables character replacements: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## Guide d'implémentation + +### Activer le remplacement de caractères dans les paramètres d'index +Activating this feature tells the engine to replace characters while indexing, which is the core step for case‑insensitive behavior. + +#### Étape 1 : Configurer `IndexSettings` +`IndexSettings` is the configuration object that controls how the index stores and processes text. By setting `useCharacterReplacements` to **true**, you turn on automatic lower‑casing (or any custom mapping you provide). + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### Configurer les remplacements de caractères +Map each character to its lower‑case counterpart (or any custom mapping you need). + +#### Étape 2 : Définir et ajouter des paires de remplacement +The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, etc. Adding these pairs before indexing ensures every token is normalized. + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### Indexation des documents +Now that the index is ready, you can **add documents to index** from any folder. + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### Effectuer une recherche sensible à la casse (Optionnel) + +#### Étape 4 : Exécuter des recherches sensibles à la casse +`SearchOptions` configures query behavior, such as toggling case sensitivity, allowing fine‑grained control over how searches are performed. +`SearchOptions.setUseCaseSensitiveSearch(true)` forces the engine to treat upper‑ and lower‑case characters as distinct during a specific query, overriding the default case‑insensitive behavior. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## Applications pratiques +1. **Campagnes marketing** – Normalisez les noms de produits afin que les équipes commerciales puissent localiser les ressources sans se soucier de la casse. +2. **Support client** – Alimentez les boîtes de recherche du service d'assistance qui renvoient le bon article que l'utilisateur tape « login » ou « Login ». +3. **Catalogues e‑commerce** – Assurez-vous que les acheteurs trouvent les articles quel que soit le mode de saisie des titres de produits, améliorant ainsi les taux de conversion. + +## Considérations de performance +- **Organiser les fichiers source** – Une hiérarchie de dossiers bien structurée réduit le temps passé à analyser pendant l'étape **ajouter des documents à l'index**. +- **Surveiller la mémoire** – L'indexation de grands corpus peut consommer une RAM importante ; traiter les fichiers par lots de 500 – 1 000 éléments maintient l'utilisation du tas sous contrôle. +- **Indexation asynchrone** – Lorsqu'elle est prise en charge, exécutez l'indexation sur un thread d'arrière‑plan pour garder l'interface réactive et éviter de bloquer les opérations utilisateur. + +## Problèmes courants et dépannage + +| Symptôme | Cause probable | Solution | +|----------|----------------|----------| +| Aucun résultat retourné pour un terme connu | Remplacements de caractères non activés | Vérifiez `settings.setUseCharacterReplacements(true)` et que le dictionnaire de remplacement contient les caractères nécessaires. | +| Erreur de mémoire insuffisante pendant l'indexation | Indexation de trop nombreux fichiers volumineux en même temps | Indexez par lots plus petits ou augmentez le tas JVM (`-Xmx4g`). | +| La recherche renvoie des résultats sensibles à la casse de façon inattendue | `SearchOptions.setUseCaseSensitiveSearch(true)` était activé | Supprimez-le ou réglez-le sur `false` pour le comportement par défaut insensible à la casse. | +| Le temps de chargement de l'index dépasse les attentes | Structure de dossiers inefficace ou SSD non utilisé | Réorganisez les fichiers, supprimez les documents inutilisés et stockez l'index sur un SSD rapide. | +| Les caractères spéciaux sont ignorés | Le dictionnaire de remplacement ne contient pas les entrées Unicode | Ajoutez des correspondances pour des caractères comme « é », « ß », « ø » vers leurs équivalents souhaités. | + +## Questions fréquentes + +**Q : Comment gérer les caractères spéciaux (par ex., « é », « ß ») lors de l'indexation ?** +R : Incluez ces caractères dans votre dictionnaire de remplacement, en les mappant vers leurs équivalents ASCII ou en les laissant inchangés selon les exigences de recherche. + +**Q : Puis‑je limiter le remplacement de caractères à une langue spécifique ?** +R : Oui. Créez un tableau de remplacement personnalisé qui ne contient que les caractères de la langue cible avant de l’ajouter au dictionnaire. + +**Q : Que faire si l'index met longtemps à se charger ?** +R : Optimisez la structure des dossiers, supprimez les fichiers inutiles et stockez l'index sur un SSD haute vitesse. L'indexation incrémentielle réduit également la charge de chargement. + +**Q : Est‑il possible d'annuler les remplacements de caractères après l'indexation ?** +R : Non. Les remplacements sont intégrés aux données indexées ; vous devez reconstruire l'index avec de nouveaux paramètres pour les modifier. + +**Q : Où trouver une documentation API plus détaillée ?** +R : La documentation officielle et la référence API offrent des détails exhaustifs (voir les Ressources ci‑dessous). + +## Ressources +- [Documentation](https://docs.groupdocs.com/search/java/) +- [Référence API](https://reference.groupdocs.com/search/java) +- [Télécharger GroupDocs.Search](https://releases.groupdocs.com/search/java/) +- [Référentiel GitHub](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [Forum d'assistance gratuit](https://forum.groupdocs.com/c/search/10) +- [Informations sur la licence temporaire](https://purchase.groupdocs.com/temporary-license/) + +--- + +**Dernière mise à jour :** 2026-07-31 +**Testé avec :** GroupDocs.Search 25.4 for Java +**Auteur :** GroupDocs + +--- + +## Tutoriels associés + +- [Remplacement de caractères dans GroupDocs.Search Java : guide complet pour améliorer la recherche de texte et l'indexation](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [Ajouter des documents à l'index : recherche Java sensible à la casse avec GroupDocs](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [Comment ajouter des documents à l'index avec GroupDocs.Search pour Java](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/french/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/french/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..d54e81c8b --- /dev/null +++ b/content/french/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,307 @@ +--- +date: '2026-07-31' +description: Apprenez comment créer une journalisation .NET robuste en utilisant GroupDocs, + en implémentant un logger console personnalisé et en tirant parti du FileLogger + intégré pour une surveillance efficace. +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: Apprenez comment créer une journalisation .NET robuste en utilisant + GroupDocs, en implémentant un logger console personnalisé et en tirant parti du + FileLogger intégré pour une surveillance efficace. +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: Créer une journalisation .NET robuste avec le Console Logger de GroupDocs +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: Créer une journalisation .NET robuste avec le Console Logger de GroupDocs +type: docs +url: /fr/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# Créez une journalisation .NET robuste avec le journal console GroupDocs + +## Introduction + +Rencontrez‑vous des difficultés à suivre les erreurs et à tracer les opérations dans vos applications .NET ? **Créer une journalisation .NET robuste** est essentiel pour surveiller les performances, déboguer les problèmes et maintenir un fonctionnement fluide. Ce tutoriel vous guide dans la création d’un journaliseur console personnalisé en utilisant GroupDocs.Search tout en montrant comment intégrer GroupDocs.Redaction pour .NET. À la fin, vous disposerez d’une solution de journalisation transparente et maintenable qui s’intègre parfaitement à votre base de code existante. + +## Réponses rapides +- **Que fait le journaliseur personnalisé ?** Écrit les entrées de journal directement dans la console pour un retour instantané pendant le développement. +- **Quel composant GroupDocs fournit la journalisation dans un fichier ?** La classe intégrée `FileLogger` gère les fichiers de journal persistants. +- **Ai‑je besoin d’une licence ?** Une licence temporaire fonctionne pour les tests ; une licence complète est requise pour la production. +- **Quelles versions de .NET sont prises en charge ?** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **La solution est‑elle thread‑safe ?** Oui — les deux `ConsoleLogger` et `FileLogger` sont conçus pour une utilisation concurrente. + +## Qu’est‑ce que « créer une journalisation .NET robuste » ? +**Créer une journalisation .NET robuste** signifie mettre en place un pipeline de journalisation fiable et haute performance qui capture les erreurs, les avertissements et les messages d’information à tous les niveaux d’une application. Avec GroupDocs, vous pouvez y parvenir en utilisant à la fois des cibles console et fichier tout en gardant une configuration simple. + +## Pourquoi utiliser GroupDocs pour la journalisation .NET ? +GroupDocs prend en charge **plus de 30 plateformes .NET** et peut traiter des documents jusqu’à **2 GB** sans impact notable sur les performances. Ses API de journalisation sont légères, thread‑safe et s’intègrent parfaitement aux modèles de gestion d’exceptions existants, vous offrant une solution éprouvée de niveau entreprise. + +## Prérequis + +- **Bibliothèques requises et versions :** GroupDocs.Search pour .NET et GroupDocs.Redaction pour .NET (dernières versions compatibles). +- **Configuration de l’environnement :** Visual Studio 2022 ou tout IDE compatible .NET. +- **Connaissances préalables :** Familiarité avec la syntaxe C# et les concepts de base de la journalisation. + +## Configuration de GroupDocs.Redaction pour .NET + +Tout d’abord, ajoutez GroupDocs.Redaction à votre projet. Choisissez la méthode qui correspond le mieux à votre flux de travail. + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Gestionnaire de packages** +```powershell +Install-Package GroupDocs.Redaction +``` + +**Interface du gestionnaire de packages NuGet** +Recherchez « GroupDocs.Redaction » et installez la dernière version. + +### Acquisition de licence + +Pour commencer, vous pouvez obtenir une licence temporaire ou acheter une licence complète. Cela vous permettra d’explorer toutes les fonctionnalités sans limitation. Visitez le site officiel de [GroupDocs](https://purchase.groupdocs.com/temporary-license/) pour plus de détails sur l’obtention de votre licence. + +### Initialisation et configuration de base + +La classe `Redactor` fournit des API pour modifier et masquer le contenu des documents pris en charge. +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## Guide d’implémentation + +### Comment implémenter un journaliseur console personnalisé avec GroupDocs ? + +Chargez votre journaliseur personnalisé en créant une instance de `ConsoleLogger` et en la transmettant à `SearchOptions` ou à tout composant GroupDocs acceptant un `ILogger`. Le journaliseur écrit chaque message avec `Console.WriteLine`, vous offrant une visibilité en temps réel de ce que fait la bibliothèque et vous aidant à repérer rapidement les problèmes pendant le développement. + +La classe `ConsoleLogger` implémente `ILogger` pour écrire les messages de journal directement dans la console. +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Étape 1 : Définissez votre journaliseur personnalisé** +Créez une nouvelle classe nommée `ConsoleLogger` : +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Étape 2 : Intégrez avec GroupDocs.Search** + +`SearchOptions` configure le comportement de recherche et accepte un `ILogger` pour la journalisation. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Qu’est‑ce que le FileLogger et quand l’utiliser ? + +La classe `FileLogger` implémente `ILogger` et persiste les entrées de journal dans un fichier sur disque, ce qui la rend idéale pour les environnements de production où des traces d’audit sont nécessaires. La classe `FileLogger` fournie par GroupDocs écrit les entrées de journal dans un fichier spécifié sur le disque, ce qui la rend parfaite pour les environnements de production nécessitant des traces d’audit persistantes. Vous pouvez configurer la rotation des journaux, les limites de taille de fichier et les niveaux de journalisation pour répondre à vos exigences opérationnelles. + +La classe `FileLogger` implémente `ILogger` et persiste les entrées de journal dans un fichier sur disque. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Pourquoi choisir GroupDocs pour la journalisation .NET ? + +GroupDocs offre un avantage **quantifié** : il prend en charge **plus de 50 formats de sortie** et peut gérer **des documents de plusieurs centaines de pages** sans charger le fichier complet en mémoire. Son infrastructure de journalisation ajoute moins de **2 ms** de surcharge par entrée de journal, garantissant que les performances restent optimales même sous forte charge. + +## Applications pratiques + +Voici quelques scénarios où ces techniques de journalisation brillent : + +1. **Surveillance d’application :** Utilisez `ConsoleLogger` pendant le développement pour voir les diagnostics en direct. +2. **Traces d’audit :** Déployez `FileLogger` pour maintenir des journaux de conformité pour les rapports réglementaires. +3. **Débogage :** Exploitez les messages de trace détaillés pour identifier les problèmes dans des pipelines de recherche complexes. +4. **Analyse des performances :** Examinez les horodatages des journaux pour repérer les goulots d’étranglement et optimiser l’utilisation des ressources. + +## Considérations de performance + +Pour garder la journalisation rapide et efficace : + +- **Limiter la verbosité du journal :** Réglez le niveau du journaliseur sur `Info` ou `Warning` en production afin d’éviter un I/O excessif. +- **Utilisation efficace des ressources :** Configurez `FileLogger` avec une taille maximale de fichier de 10 Mo et activez le basculement automatique. +- **Gestion de la mémoire :** Libérez les instances du journaliseur avec des blocs `using` ou des appels explicites à `Dispose()` pour libérer rapidement les ressources. + +## Questions fréquentes + +**Q : Puis‑je utiliser le journaliseur console personnalisé dans une application multithread ?** +R : Oui—les deux `ConsoleLogger` et `FileLogger` sont thread‑safe, vous pouvez donc journaliser depuis des tâches parallèles sans conditions de concurrence. + +**Q : Dois‑je une licence séparée pour GroupDocs.Search et GroupDocs.Redaction ?** +R : Une licence GroupDocs unique couvre tous les modules, y compris Search et Redaction, simplifiant ainsi l’acquisition. + +**Q : Comment changer l’emplacement du fichier journal pour FileLogger ?** +R : Définissez la propriété `LogFilePath` lors de la construction de l’instance `FileLogger`, par exemple `new FileLogger("C:\\Logs\\app.log")`. + +**Q : Quels niveaux de journalisation GroupDocs prend‑il en charge ?** +R : La bibliothèque propose les niveaux `Debug`, `Info`, `Warning`, `Error` et `Critical`, permettant un contrôle fin de la sortie. + +**Q : Est‑il possible de combiner à la fois la journalisation console et fichier simultanément ?** +R : Absolument—créez un journaliseur composite qui transmet les messages à la fois à `ConsoleLogger` et à `FileLogger` pour une visibilité double. + +## Ressources + +- [Documentation GroupDocs Redaction](https://docs.groupdocs.com/search/net/) +- [Référence API](https://reference.groupdocs.com/redaction/net) +- [Téléchargement des bibliothèques GroupDocs](https://releases.groupdocs.com/search/net/) +- [Forum d’assistance gratuit](https://forum.groupdocs.com/c/search/10) +- [Acquisition de licence temporaire](https://purchase.groupdocs.com/temporary-license/) + +## Conclusion + +Dans ce guide, nous avons montré comment **créer une journalisation .NET robuste** en construisant un journaliseur console personnalisé et en tirant parti du `FileLogger` intégré de GroupDocs. Ces outils vous offrent une visibilité en temps réel pendant le développement et des journaux persistants fiables pour la production. Explorez différentes configurations de niveaux de journal, expérimentez les journaliseurs composites et intégrez la solution dans des services plus larges pour une observabilité full‑stack. + +**Étapes suivantes** + +- Testez différentes configurations de niveaux de journal pour trouver le bon compromis entre détail et performance. +- Ajoutez une journalisation structurée (sortie JSON) à `FileLogger` pour faciliter l’ingestion dans les plateformes d’analyse de logs. +- Explorez les autres modules de GroupDocs, tels que Search et Annotation, afin d’étendre votre pipeline de traitement de documents. + +--- + +**Dernière mise à jour :** 2026-07-31 +**Testé avec :** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 pour .NET +**Auteur :** GroupDocs + +--- + +## Tutoriels associés + +- [Tutoriels de gestion des exceptions et de journalisation pour GroupDocs.Search .NET](/search/net/exception-handling-logging/) +- [Implémentation de GroupDocs.Search et Redaction en .NET pour la gestion de documents](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [Maîtriser GroupDocs Search et Redaction en .NET : Gestion avancée de documents](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/german/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/german/java/searching/groupdocs-search-java-regex-tutorial/_index.md new file mode 100644 index 000000000..bc12df60b --- /dev/null +++ b/content/german/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -0,0 +1,233 @@ +--- +date: '2026-07-31' +description: Erfahren Sie, wie Sie in Java mit GroupDocs.Search reguläre Ausdrücke + suchen. Dieses Schritt‑für‑Schritt‑Tutorial zeigt die Einrichtung, die Indexerstellung + und Beispiele für Regex‑Abfragen für die schnelle Analyse von Textdokumenten. +keywords: +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: Wie man in Java mit GroupDocs.Search regex search ermöglicht schnelles + Mustererkennen in PDFs, Word‑ und Textdateien. Folgen Sie dieser Anleitung, um Dokumente + zu indexieren und leistungsstarke Regex‑Abfragen auszuführen. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: Wie man in Java mit GroupDocs.Search Regex‑Suche durchführt – Anleitung +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: Wie man in Java mit GroupDocs.Search Regex‑Suche durchführt – Anleitung +type: docs +url: /de/java/searching/groupdocs-search-java-regex-tutorial/ +weight: 1 +--- + +# Wie man in Java mit GroupDocs.Search reguläre Ausdrücke sucht + +Das Durchsuchen von Tausenden von Textdokumenten kann sich anfühlen, als würde man eine Nadel im Heuhaufen suchen. **How to regex search** in Java wird mühelos, wenn man die leistungsstarke reguläre‑Ausdruck‑Engine der Sprache mit GroupDocs.Search kombiniert, einer Bibliothek, die einen Index für blitzschnelles Muster‑Matching erstellt. In den nächsten Minuten sehen Sie, wie Sie die Bibliothek installieren, einen Index erstellen, Dateien hinzufügen und sowohl einfache textbasierte als auch objektorientierte Regex‑Abfragen ausführen. Am Ende sind Sie bereit, eine robuste Muster‑Suchfunktion in jede Java‑Anwendung einzubetten. + +## Schnelle Antworten +- **Was ist die primäre Bibliothek?** GroupDocs.Search for Java +- **Wie starte ich?** Add the Maven dependency and instantiate an `Index` object +- **Kann ich Inhalte mit Regex filtern?** Yes – use regex queries for content‑filtering scenarios +- **Brauche ich eine Lizenz?** A free trial or temporary license is required for production use +- **Welche JDK-Version wird unterstützt?** Java 8 or higher + +## Was ist Regex-Suche? +Regex-Suche ermöglicht es Ihnen, Muster wie Datumsangaben, E‑Mail‑Adressen oder wiederholte Zeichen in vielen Dateien in einem einzigen Vorgang zu finden. Sie verwandelt eine reine Textabfrage in einen leistungsstarken, regelbasierten Scanner, der Inhalte on‑the‑fly extrahieren oder blockieren kann. + +## Warum GroupDocs.Search für Regex‑Suche verwenden? +GroupDocs.Search indexiert Dokumente einmal und verwendet diesen Index dann für jede Abfrage, wodurch **bis zu 10× schnellere** Suchen im Vergleich zum rohen Dateiscannen erzielt werden. Die Bibliothek unterstützt **30+ Dateiformate** (PDF, DOCX, XLSX, PPTX, TXT, HTML und mehr) und kann mehrseitige Dateien verarbeiten, ohne die gesamte Datei in den Speicher zu laden. + +## Voraussetzungen +- Java Development Kit (JDK) 8 oder höher +- Maven für das Abhängigkeitsmanagement +- Grundlegende Kenntnisse von Java‑Regulären‑Ausdrücken + +### Erforderliche Bibliotheken und Abhängigkeiten +Fügen Sie GroupDocs.Search zu Ihrem Maven‑Projekt hinzu: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +Alternativ können Sie das neueste JAR von [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/) herunterladen. + +### Lizenzbeschaffung +Erhalten Sie eine kostenlose Testversion oder eine temporäre Lizenz von [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) und laden Sie sie beim Anwendungsstart. + +## Einrichtung von GroupDocs.Search für Java + +### Installationsinformationen +1. **Maven‑Integration:** Fügen Sie das oben gezeigte Repository und die Abhängigkeit zu Ihrer `pom.xml` hinzu. +2. **Direkter Download:** Platzieren Sie die JAR‑Dateien im Klassenpfad Ihres Projekts. +3. **Lizenzanwendung:** Laden Sie die Lizenzdatei beim Anwendungsstart. + +```java +import com.groupdocs.search.*; + +public class SearchSetup { + public static void main(String[] args) { + // Initialize the index by specifying a directory. + String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; + Index index = new Index(indexFolder); + + System.out.println("Index created successfully at: " + indexFolder); + } +} +``` + +## Kernkomponenten +Die Klasse `Index` ist die Kernkomponente, die durchsuchbare Token aus Ihren Dokumenten speichert. Sie ermöglicht ein schnelles Nachschlagen jedes Begriffs oder Musters, ohne die Originaldateien erneut zu lesen. + +## Wie man einen Index erstellt +Das Erstellen eines Index ist einfach: Instanziieren Sie die Klasse `Index` mit einem Ordnerpfad, in dem die Indexdateien gespeichert werden. Der Konstruktor erstellt bei der ersten Verwendung die notwendigen Datenbankdateien und bereitet die Engine zum Hinzufügen und Durchsuchen von Dokumenten vor. Sobald er erstellt ist, verwenden Sie denselben Index für alle Abfragen erneut. + +```java +String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; +Index index = new Index(indexFolder); +``` + +## Wie man Dokumente hinzufügt +Um eine Datei durchsuchbar zu machen, rufen Sie `index.add` mit einer `Document`‑ (oder `DocumentInfo`‑) Instanz auf, die auf den Dateipfad verweist. Die Bibliothek analysiert den Inhalt, extrahiert Token und speichert sie im Index. Dieser Vorgang kann für einzelne Dateien oder Stapel durchgeführt werden, und Aktualisierungen werden inkrementell zusammengeführt. + +```java +index.add("YOUR_DOCUMENT_DIRECTORY"); +system.out.println("Documents added to the index."); +``` + +## Wie man reguläre Ausdruckssuche in Textform durchführt +`RegexQuery` definiert eine auf regulären Ausdrücken basierende Suchabfrage. Laden Sie ein `RegexQuery` mit einem Klartext‑Muster und übergeben Sie es an die `search`‑Methode des `Index`. Die Engine bewertet das Muster gegen die indizierten Token und gibt passende Dokumentreferenzen zurück, wodurch einmalige Lookups schnell und einfach werden. + +```java +String query1 = "^((.)\\2{1,})"; +``` + +## Wie man reguläre Ausdruckssuche in Objektform durchführt +`RegexQuery` kann auch als Objekt erstellt und über mehrere Suchen hinweg wiederverwendet werden. Definieren Sie die Abfrage einmal, konfigurieren Sie Optionen wie Groß‑/Kleinschreibung‑Unempfindlichkeit oder Fuzzy‑Matching und rufen Sie `index.search` wiederholt auf. Dieser Ansatz verbessert die Leistung, wenn dasselbe Muster auf viele verschiedene Dokumentensätze angewendet wird. + +```java +SearchResult result1 = index.search(query1); +system.out.println("Number of occurrences found: " + result1.getDocumentCount()); +``` + +## Anwendungsfälle für Regex‑basiertes Inhaltsfiltering +Sie können Regex einsetzen, um Inhalte, die bestimmten Mustern entsprechen, automatisch zu blockieren oder zu markieren, zum Beispiel: +- Erkennung wiederholter Zeichen für Spam‑Filterung +- Finden von kreditkartenähnlichen Sequenzen für Datenschutz‑Prüfungen +- Extrahieren von Daten oder IDs für nachgelagerte Verarbeitung + +## Praktische Anwendungen +1. **Dokumentenmanagement‑Systeme:** Verträge, Rechnungen oder Richtlinien anhand von Mustern finden (z. B. Rechnungsnummern). +2. **Inhaltsmoderation:** Regex‑Regeln anwenden, um nutzergenerierten Text in Foren oder Chat‑Apps zu moderieren. +3. **Datenextraktion:** Strukturierte Daten wie Bestellnummern aus unstrukturierten PDFs oder Word‑Dateien extrahieren. + +## Leistungsüberlegungen +- **Index‑Aktualisierungen:** Rufen Sie `index.add` auf, sobald sich Quelldateien ändern, um die Ergebnisse aktuell zu halten. +- **Speichermanagement:** Für Korpora mit mehr als 1 Million Dokumenten aktivieren Sie inkrementelles Indexieren, um die Heap‑Nutzung zu kontrollieren. +- **Regex‑Design:** Halten Sie Muster kurz; ein Muster wie `\d{4}-\d{2}-\d{2}` ist 3× schneller als ein wildcard‑intensiver Ausdruck wie `.*`. + +## Fazit +Sie wissen jetzt **wie man in Java mit GroupDocs.Search reguläre Ausdrücke sucht**, von der Installation der Bibliothek und dem Erstellen eines Index bis hin zur Ausführung sowohl textbasierter als auch objektorientierter Abfragen. Diese Techniken ermöglichen es Ihnen, eine schnelle, musterbasierte Suche in jede Java‑Anwendung einzubauen, egal ob Sie ein Dokumenten‑Portal, einen Compliance‑Scanner oder eine Data‑Mining‑Pipeline erstellen. + +## Häufig gestellte Fragen + +**Q:** Was ist der Unterschied zwischen textbasierten und objektbasierten Regex‑Abfragen in GroupDocs.Search? +**A:** Textbasierte Abfragen sind schnelle Einzeiler, während objektbasierte Abfragen wiederverwendbare, typensichere Definitionen bieten, die gespeichert und über mehrere Suchen hinweg wiederverwendet werden können. + +**Q:** Kann GroupDocs.Search nicht‑Text‑Dokumente wie PDFs oder Excel‑Dateien indexieren? +**A:** Ja, die Bibliothek extrahiert durchsuchbaren Text aus PDFs, DOCX, XLSX, PPTX und über 30 weiteren Formaten. + +**Q:** Wie aktualisiere ich einen bestehenden Such‑Index, nachdem neue Dateien hinzugefügt wurden? +**A:** Rufen Sie `index.add` mit den neuen oder geänderten Dokumenten auf; die Bibliothek wird die Änderungen zusammenführen, ohne den gesamten Index neu zu erstellen. + +**Q:** Was sind häufige Stolperfallen bei der Verwendung von Regex mit GroupDocs.Search? +**A:** Zu breit gefasste Muster (z. B. `.*`) können die Leistung beeinträchtigen, und fehlerhafte Ausdrücke können keine Ergebnisse liefern. Testen Sie Muster immer zuerst an einem Beispielsatz. + +**Q:** Wo finde ich weiterführende GroupDocs.Search‑Tutorials? +**A:** Besuchen Sie die [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) für ausführliche Anleitungen, API‑Referenzen und Beispielprojekte. + +--- + +**Zuletzt aktualisiert:** 2026-07-31 +**Getestet mit:** GroupDocs.Search 25.4 +**Autor:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## Verwandte Tutorials + +- [Meistern Sie GroupDocs.Search Java: Effiziente Dokumentensuche und Indexverwaltung](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [Meistern von GroupDocs.Search Java: Fuzzy‑Suche & Dokumenten‑Indexierungs‑Leitfaden](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [Wie man Text in Java mit GroupDocs.Search indexiert – Anleitung](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/german/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/german/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..366c53b41 --- /dev/null +++ b/content/german/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,276 @@ +--- +date: '2026-07-31' +description: Erfahren Sie, wie Sie case insensitive search java implementieren, indem + Sie Dokumente zu einem Index mit GroupDocs.Search hinzufügen und dabei character + replacement verwenden, um Text beim Indexing zu normalisieren. +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: Case insensitive search java ermöglicht das Hinzufügen von Dokumenten + zu einem Index und das Abfragen ohne Sorge um Groß‑/Kleinschreibung. Dieser Leitfaden + zeigt, wie GroupDocs.Search Text beim Indexing normalisiert, um schnelle und zuverlässige + Ergebnisse zu erzielen. +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Case Insensitive Search Java – Dokumente mit GroupDocs indexieren +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: Dokumente zum Index hinzufügen für case‑insensitive Suche in Java +type: docs +url: /de/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# Dokumente zum Index hinzufügen für case‑insensitive Suche in Java + +Wenn Sie **case insensitive search java** benötigen, die zuverlässig Informationen findet, unabhängig davon, wie Benutzer sie eingeben, ist der Schlüssel, Dokumente zu einem Index hinzuzufügen und dabei den Text zu normalisieren. In diesem Tutorial führen wir Sie durch die Konfiguration von GroupDocs.Search für Java, sodass jedes Dokument, das Sie indexieren, automatisch in Kleinbuchstaben (oder anderweitig transformiert) während des Indexierens umgewandelt wird, wodurch case‑insensitive Ergebnisse ohne zusätzliche Abfrage‑Logik garantiert werden. + +## Schnelle Antworten +- **Was bedeutet „add documents to index“?** Es bedeutet, Quelldateien in eine durchsuchbare Datenstruktur zu laden, damit sie später abgefragt werden können. +- **Warum Zeichenersetzung verwenden?** Sie normalisiert jedes Zeichen – typischerweise in Kleinbuchstaben – sodass Suchvorgänge Groß‑ und Kleinschreibung automatisch ignorieren. +- **Benötige ich eine Lizenz?** Eine kostenlose Testversion funktioniert für die Entwicklung; für den Produktionseinsatz ist eine Volllizenz erforderlich. +- **Welche Java‑Version wird benötigt?** Java 8 oder neuer; die Bibliothek zielt auf Java 11+ für optimale Leistung ab. +- **Kann ich bei Bedarf zur case‑sensitive Suche wechseln?** Ja – Suchoptionen ermöglichen das Umschalten der Groß‑/Kleinschreibung pro Abfrage. + +## Was bedeutet „add documents to index“ in GroupDocs.Search? +Laden Sie Ihre Quelldateien (PDF, DOCX, TXT usw.) in einen durchsuchbaren Index, damit die Engine sie schnell abrufen kann. Das Hinzufügen von Dokumenten zu einem Index analysiert jede Datei, extrahiert den Klartext und speichert ihn in einer optimierten Datenstruktur, die schnelle Look‑ups ermöglicht. + +## Warum Zeichenersetzung beim Indexieren aktivieren? +Zeichenersetzung konvertiert jedes Zeichen in ein vordefiniertes Äquivalent – meist in Kleinbuchstaben – während der Index aufgebaut wird. Das stellt sicher, dass Variationen in Groß‑/Kleinschreibung, Diakritika oder länderspezifischen Symbolen die Suchergebnisse nicht beeinflussen. Durch die Normalisierung des Textes zur Indexierungszeit kann die Engine Abfragen gegen einen konsistenten Token‑Satz abgleichen und liefert schnelles, zuverlässiges case‑insensitive Verhalten ohne zusätzliche Verarbeitung bei jeder Suche. + +## Voraussetzungen +- **GroupDocs.Search for Java** Version 25.4 oder neuer (die Bibliothek unterstützt über 30 Dateiformate und kann mehrseitige Dokumente indexieren, ohne die gesamte Datei in den Speicher zu laden). +- **Java Development Kit (JDK)** 8 oder höher installiert. +- Grundlegende Kenntnisse mit **Maven** (oder die Möglichkeit, JARs manuell hinzuzufügen). + +## Einrichtung von GroupDocs.Search für Java + +### Maven‑Einrichtung +Add the GroupDocs repository and dependency to your `pom.xml`: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### Direkter Download +If you prefer not to use Maven, grab the latest JAR from the official site: [GroupDocs.Search für Java Releases](https://releases.groupdocs.com/search/java/). + +### Lizenzbeschaffung +- **Free Trial** – Laden Sie eine Testlizenz herunter, um zu experimentieren. +- **Temporary License** – Fordern Sie eine erweiterte Testlizenz über das GroupDocs‑Portal an. +- **Full License** – Kaufen Sie eine Produktionslizenz, wenn Sie bereit für den Live‑Betrieb sind. + +### Grundlegende Initialisierung (Index erstellen) +The following snippet creates an index folder and enables character replacements: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## Implementierungs‑Leitfaden + +### Zeichenersetzung in Indexeinstellungen aktivieren +Activating this feature tells the engine to replace characters while indexing, which is the core step for case‑insensitive behavior. + +#### Schritt 1: `IndexSettings` konfigurieren +`IndexSettings` is the configuration object that controls how the index stores and processes text. By setting `useCharacterReplacements` to **true**, you turn on automatic lower‑casing (or any custom mapping you provide). + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### Zeichenersetzung konfigurieren + +#### Schritt 2: Ersetzen‑Paare definieren und hinzufügen +The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, etc. Adding these pairs before indexing ensures every token is normalized. + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### Dokumente indexieren +Jetzt, da der Index bereit ist, können Sie **add documents to index** aus jedem Ordner hinzufügen. + +#### Schritt 3: Dokumente zum Indexieren hinzufügen +GroupDocs.Search scans the target directory, extracts text from each supported file type, applies the replacement map, and writes the tokens to the index storage. + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### Case‑sensitive Suche ausführen (Optional) + +#### Schritt 4: Case‑sensitive Suchen ausführen +`SearchOptions` configures query behavior, such as toggling case sensitivity, allowing fine‑grained control over how searches are performed. +`SearchOptions.setUseCaseSensitiveSearch(true)` forces the engine to treat upper‑ and lower‑case characters as distinct during a specific query, overriding the default case‑insensitive behavior. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## Praktische Anwendungsfälle +1. **Marketing Campaigns** – Produktnamen normalisieren, damit Vertriebsteams Assets finden können, ohne sich um die Groß‑/Kleinschreibung zu kümmern. +2. **Customer Support** – Help‑Desk‑Suchfelder betreiben, die den richtigen Artikel zurückgeben, egal ob der Benutzer „login“ oder „Login“ eingibt. +3. **E‑commerce Catalogs** – Sicherstellen, dass Käufer Artikel finden, unabhängig davon, wie sie Produkttitel eingeben, was die Konversionsrate erhöht. + +## Leistungsüberlegungen +- **Source‑Dateien organisieren** – Eine aufgeräumte Ordnerhierarchie reduziert die Scan‑Zeit beim **add documents to index**‑Schritt. +- **Speicher überwachen** – Das Indexieren großer Korpora kann viel RAM verbrauchen; das Verarbeiten von Dateien in Stapeln von 500 – 1 000 Elementen hält den Heap‑Verbrauch im Griff. +- **Asynchrones Indexieren** – Wenn unterstützt, das Indexieren in einem Hintergrund‑Thread ausführen, um die UI reaktionsfähig zu halten und Benutzer‑Operationen nicht zu blockieren. + +## Häufige Probleme & Fehlerbehebung +| Symptom | Wahrscheinliche Ursache | Lösung | +|---------|--------------------------|--------| +| Keine Ergebnisse für einen bekannten Begriff zurückgegeben | Zeichenersetzung nicht aktiviert | Überprüfen Sie `settings.setUseCharacterReplacements(true)` und dass die Ersetzungstabelle die benötigten Zeichen enthält. | +| Out‑of‑Memory‑Fehler beim Indexieren | Zu viele große Dateien gleichzeitig indexieren | In kleineren Stapeln indexieren oder den JVM‑Heap erhöhen (`-Xmx4g`). | +| Suche liefert unerwartet case‑sensitive Ergebnisse | `SearchOptions.setUseCaseSensitiveSearch(true)` war gesetzt | Entfernen Sie es oder setzen Sie es auf `false`, um das standardmäßige case‑insensitive Verhalten zu erhalten. | +| Index‑Ladezeit übertrifft Erwartungen | Ineffiziente Ordnerstruktur oder SSD nicht verwendet | Dateien neu organisieren, ungenutzte Dokumente entfernen und den Index auf einer schnellen SSD speichern. | +| Sonderzeichen werden ignoriert | Ersetzungstabelle fehlt Unicode‑Einträge | Fügen Sie Zuordnungen für Zeichen wie “é”, “ß”, “ø” zu ihren gewünschten Äquivalenten hinzu. | + +## Häufig gestellte Fragen + +**Q: Wie gehe ich mit Sonderzeichen (z. B. “é”, “ß”) beim Indexieren um?** +A: Fügen Sie diese Zeichen in Ihre Ersetzungstabelle ein und ordnen Sie sie ihren ASCII‑Entsprechungen zu oder lassen Sie sie unverändert, je nach Suchanforderungen. + +**Q: Kann ich die Zeichenersetzung auf eine bestimmte Sprache beschränken?** +A: Ja. Erstellen Sie ein benutzerdefiniertes Ersetzungs‑Array, das nur die Zeichen der Zielsprache enthält, bevor Sie es dem Wörterbuch hinzufügen. + +**Q: Was soll ich tun, wenn das Laden des Index lange dauert?** +A: Optimieren Sie die Ordnerstruktur, entfernen Sie unnötige Dateien und speichern Sie den Index auf einer schnellen SSD. Inkrementelles Indexieren reduziert ebenfalls den Ladevorgang. + +**Q: Ist es möglich, die Zeichenersetzungen nach dem Indexieren rückgängig zu machen?** +A: Nein. Ersetzungen sind in den indexierten Daten fest verankert; Sie müssen den Index mit neuen Einstellungen neu erstellen, um sie zu ändern. + +**Q: Wo finde ich detailliertere API‑Dokumentation?** +A: Die offiziellen Dokumente und die API‑Referenz bieten ausführliche Details (siehe Ressourcen unten). + +## Ressourcen +- [Dokumentation](https://docs.groupdocs.com/search/java/) +- [API‑Referenz](https://reference.groupdocs.com/search/java) +- [GroupDocs.Search herunterladen](https://releases.groupdocs.com/search/java/) +- [GitHub‑Repository](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [Kostenloses Support‑Forum](https://forum.groupdocs.com/c/search/10) +- [Informationen zur temporären Lizenz](https://purchase.groupdocs.com/temporary-license/) + +--- + +**Zuletzt aktualisiert:** 2026-07-31 +**Getestet mit:** GroupDocs.Search 25.4 for Java +**Autor:** GroupDocs + +## Verwandte Tutorials + +- [Zeichenersetzung in GroupDocs.Search Java: Ein umfassender Leitfaden zur Verbesserung der Textsuche und Indexierung](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [Dokumente zum Index hinzufügen: case‑sensitive Java‑Suche mit GroupDocs](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [Wie man Dokumente zum Index hinzufügt mit GroupDocs.Search für Java](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/german/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/german/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..96f2a06ae --- /dev/null +++ b/content/german/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,307 @@ +--- +date: '2026-07-31' +description: Erfahren Sie, wie Sie robustes .NET-Logging mit GroupDocs erstellen, + indem Sie einen custom console logger implementieren und den built‑in FileLogger + für effektives Monitoring nutzen. +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: Erfahren Sie, wie Sie robustes .NET-Logging mit GroupDocs erstellen, + indem Sie einen custom console logger implementieren und den built‑in FileLogger + für effektives Monitoring nutzen. +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: Erstellen Sie robustes .NET-Logging mit GroupDocs Console Logger +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: Erstellen Sie robustes .NET-Logging mit GroupDocs Console Logger +type: docs +url: /de/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# Erstellen Sie robustes .NET-Logging mit dem GroupDocs-Konsolenlogger + +## Einführung + +Haben Sie Schwierigkeiten, Fehler und Ablaufverfolgungen in Ihren .NET‑Anwendungen im Blick zu behalten? **Robustes .NET-Logging erstellen** ist essenziell für die Überwachung der Leistung, das Debuggen von Problemen und die Aufrechterhaltung eines reibungslosen Betriebs. Dieses Tutorial führt Sie durch den Aufbau eines benutzerdefinierten Konsolen‑Loggers mit GroupDocs.Search und zeigt zudem, wie Sie GroupDocs.Redaction für .NET integrieren. Am Ende verfügen Sie über eine transparente, wartbare Logging‑Lösung, die sich nahtlos in Ihren bestehenden Code einfügt. + +## Schnelle Antworten +- **Was macht der benutzerdefinierte Logger?** Schreibt Log‑Einträge direkt in die Konsole für sofortiges Feedback während der Entwicklung. +- **Welcher GroupDocs‑Komponente bietet Dateilogging?** Die integrierte `FileLogger`‑Klasse verwaltet persistente Log‑Dateien. +- **Benötige ich eine Lizenz?** Eine temporäre Lizenz funktioniert für Tests; für die Produktion ist eine Voll‑Lizenz erforderlich. +- **Welche .NET‑Versionen werden unterstützt?** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **Ist die Lösung thread‑sicher?** Ja – sowohl `ConsoleLogger` als auch `FileLogger` sind für gleichzeitige Nutzung ausgelegt. + +## Was bedeutet „robustes .NET-Logging erstellen“? +**Robustes .NET-Logging erstellen** bedeutet, eine zuverlässige, leistungsstarke Logging‑Pipeline aufzubauen, die Fehler, Warnungen und Informationsmeldungen über alle Schichten einer Anwendung hinweg erfasst. Mit GroupDocs können Sie dies sowohl mit Konsolen‑ als auch mit Dateizielen erreichen, während die Konfiguration einfach bleibt. + +## Warum GroupDocs für .NET‑Logging verwenden? +GroupDocs unterstützt **30+ .NET‑Plattformen** und kann Dokumente bis zu **2 GB** verarbeiten, ohne merkliche Leistungseinbußen. Seine Logging‑APIs sind leichtgewichtig, thread‑sicher und lassen sich nahtlos in bestehende Ausnahmebehandlungs‑Muster integrieren, wodurch Sie eine bewährte Enterprise‑Lösung erhalten. + +## Voraussetzungen + +- **Erforderliche Bibliotheken und Versionen:** GroupDocs.Search für .NET und GroupDocs.Redaction für .NET (neueste kompatible Releases). +- **Umgebungs‑Setup:** Visual Studio 2022 oder jede .NET‑kompatible IDE. +- **Vorkenntnisse:** Vertrautheit mit C#‑Syntax und grundlegenden Logging‑Konzepten. + +## Einrichtung von GroupDocs.Redaction für .NET + +Zuerst fügen Sie GroupDocs.Redaction zu Ihrem Projekt hinzu. Wählen Sie die Methode, die am besten zu Ihrem Workflow passt. + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +Suche nach „GroupDocs.Redaction“ und installiere die neueste Version. + +### Lizenzbeschaffung + +Um zu beginnen, können Sie eine temporäre Lizenz erwerben oder eine Voll‑Lizenz kaufen. Damit können Sie alle Funktionen ohne Einschränkungen testen. Besuchen Sie die [offizielle Seite von GroupDocs](https://purchase.groupdocs.com/temporary-license/) für weitere Details zur Lizenzbeschaffung. + +### Grundlegende Initialisierung und Einrichtung + +Die Klasse `Redactor` stellt APIs zum Ändern und Redigieren von Inhalten in unterstützten Dokumenten bereit. +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## Implementierungs‑Leitfaden + +### Wie implementiere ich einen benutzerdefinierten Konsolen‑Logger mit GroupDocs? + +Laden Sie Ihren benutzerdefinierten Logger, indem Sie eine Instanz von `ConsoleLogger` erstellen und sie an `SearchOptions` oder jede GroupDocs‑Komponente übergeben, die ein `ILogger` akzeptiert. Der Logger schreibt jede Nachricht zu `Console.WriteLine`, wodurch Sie in Echtzeit sehen, was die Bibliothek tut, und hilft Ihnen, Probleme während der Entwicklung schnell zu erkennen. + +Die Klasse `ConsoleLogger` implementiert `ILogger`, um Log‑Nachrichten direkt in die Konsole zu schreiben. +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Schritt 1: Definieren Sie Ihren benutzerdefinierten Logger** +Erstellen Sie eine neue Klasse mit dem Namen `ConsoleLogger`: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Schritt 2: Integration mit GroupDocs.Search** + +`SearchOptions` konfiguriert das Suchverhalten und akzeptiert ein `ILogger` für das Logging. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Was ist der FileLogger und wann sollte er verwendet werden? + +Die Klasse `FileLogger` implementiert `ILogger` und speichert Log‑Einträge in einer Datei auf dem Datenträger, was sie ideal für Produktionsumgebungen macht, in denen Prüfpfade erforderlich sind. Die von GroupDocs bereitgestellte `FileLogger`‑Klasse schreibt Log‑Einträge in eine angegebene Datei, was sie perfekt für Produktionsumgebungen macht, in denen persistente Prüfpfade benötigt werden. Sie können Log‑Rotation, Dateigrößen‑Limits und Log‑Level konfigurieren, um Ihren betrieblichen Anforderungen gerecht zu werden. + +Die Klasse `FileLogger` implementiert `ILogger` und speichert Log‑Einträge in einer Datei auf dem Datenträger. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Warum GroupDocs für .NET‑Logging wählen? + +GroupDocs bietet einen **messbaren** Vorteil: Es unterstützt **über 50 Ausgabeformate** und kann **mehrseitige Dokumente** verarbeiten, ohne die gesamte Datei in den Speicher zu laden. Seine Logging‑Infrastruktur fügt pro Log‑Eintrag weniger als **2 ms** Overhead hinzu, sodass die Leistung selbst bei hoher Belastung optimal bleibt. + +## Praktische Anwendungen + +Hier sind einige praktische Szenarien, in denen diese Logging‑Techniken glänzen: + +1. **Anwendungsüberwachung:** Verwenden Sie `ConsoleLogger` während der Entwicklung, um Live‑Diagnosen zu sehen. +2. **Prüfpfade:** Setzen Sie `FileLogger` ein, um konforme Logs für regulatorische Berichte zu führen. +3. **Debugging:** Nutzen Sie detaillierte Trace‑Nachrichten, um Probleme in komplexen Such‑Pipelines zu identifizieren. +4. **Performance‑Analyse:** Untersuchen Sie Log‑Zeitstempel, um Engpässe zu erkennen und die Ressourcennutzung zu optimieren. + +## Leistungsüberlegungen + +Um das Logging schnell und effizient zu halten: + +- **Begrenzen Sie die Log‑Verbosity:** Setzen Sie das Log‑Level in der Produktion auf `Info` oder `Warning`, um übermäßige I/O zu vermeiden. +- **Effiziente Ressourcennutzung:** Konfigurieren Sie `FileLogger` mit einer maximalen Dateigröße von 10 MB und aktivieren Sie automatisches Rollen. +- **Speicherverwaltung:** Entsorgen Sie Logger‑Instanzen mit `using`‑Blöcken oder expliziten `Dispose()`‑Aufrufen, um Ressourcen zügig freizugeben. + +## Häufig gestellte Fragen + +**F: Kann ich den benutzerdefinierten Konsolen‑Logger in einer Multi‑Thread‑Anwendung verwenden?** +A: Ja – sowohl `ConsoleLogger` als auch `FileLogger` sind thread‑sicher, sodass Sie aus parallelen Tasks ohne Race‑Conditions protokollieren können. + +**F: Benötige ich eine separate Lizenz für GroupDocs.Search und GroupDocs.Redaction?** +A: Eine einzelne GroupDocs‑Lizenz deckt alle Module ab, einschließlich Search und Redaction, und vereinfacht die Beschaffung. + +**F: Wie ändere ich den Speicherort der Log‑Datei für FileLogger?** +A: Setzen Sie die Eigenschaft `LogFilePath` beim Erzeugen der `FileLogger`‑Instanz, z. B. `new FileLogger("C:\\Logs\\app.log")`. + +**F: Welche Log‑Level unterstützt GroupDocs?** +A: Die Bibliothek bietet die Level `Debug`, `Info`, `Warning`, `Error` und `Critical`, die eine feinkörnige Steuerung der Ausgabe ermöglichen. + +**F: Ist es möglich, sowohl Konsolen‑ als auch Dateilogging gleichzeitig zu kombinieren?** +A: Absolut – erstellen Sie einen Composite‑Logger, der Nachrichten an sowohl `ConsoleLogger` als auch `FileLogger` weiterleitet, um doppelte Sichtbarkeit zu erreichen. + +## Ressourcen + +- [GroupDocs Redaction Dokumentation](https://docs.groupdocs.com/search/net/) +- [API‑Referenz](https://reference.groupdocs.com/redaction/net) +- [GroupDocs‑Bibliotheken herunterladen](https://releases.groupdocs.com/search/net/) +- [Kostenloses Support‑Forum](https://forum.groupdocs.com/c/search/10) +- [Temporäre Lizenz erwerben](https://purchase.groupdocs.com/temporary-license/) + +## Fazit + +In diesem Leitfaden haben wir gezeigt, wie man **robustes .NET‑Logging erstellt** indem man einen benutzerdefinierten Konsolen‑Logger erstellt und den integrierten `FileLogger` von GroupDocs nutzt. Diese Werkzeuge geben Ihnen Echtzeit‑Einblicke während der Entwicklung und zuverlässige, persistente Logs für die Produktion. Erkunden Sie verschiedene Log‑Level‑Konfigurationen, experimentieren Sie mit Composite‑Loggern und integrieren Sie die Lösung in größere Services für eine Full‑Stack‑Observability. + +**Nächste Schritte** + +- Testen Sie verschiedene Log‑Level‑Einstellungen, um das optimale Gleichgewicht zwischen Detailgrad und Performance zu finden. +- Fügen Sie strukturiertes Logging (JSON‑Ausgabe) zu `FileLogger` hinzu, um die Aufnahme in Log‑Analyse‑Plattformen zu erleichtern. +- Erkunden Sie weitere GroupDocs‑Module, wie Search und Annotation, um Ihre Dokumenten‑Verarbeitungspipeline zu erweitern. + +--- + +**Zuletzt aktualisiert:** 2026-07-31 +**Getestet mit:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**Autor:** GroupDocs + +--- + +## Verwandte Tutorials + +- [Ausnahmebehandlung und Logging‑Tutorials für GroupDocs.Search .NET](/search/net/exception-handling-logging/) +- [Implementierung von GroupDocs.Search und Redaction in .NET für Dokumenten‑Management](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [Meistern von GroupDocs Search und Redaction in .NET: Fortgeschrittenes Dokumenten‑Management](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/greek/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/greek/java/searching/groupdocs-search-java-regex-tutorial/_index.md new file mode 100644 index 000000000..2ebb6e0fe --- /dev/null +++ b/content/greek/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -0,0 +1,234 @@ +--- +date: '2026-07-31' +description: Μάθετε πώς να κάνετε αναζήτηση με regex στη Java χρησιμοποιώντας το GroupDocs.Search. + Αυτό το βήμα‑βήμα tutorial δείχνει τη ρύθμιση, τη δημιουργία ευρετηρίου και παραδείγματα + ερωτημάτων regex για γρήγορη ανάλυση κειμενικών εγγράφων. +keywords: +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: Η αναζήτηση με regex στη Java χρησιμοποιώντας το GroupDocs.Search + επιτρέπει γρήγορη αντιστοίχιση προτύπων σε PDF, Word και αρχεία κειμένου. Ακολουθήστε + αυτόν τον οδηγό για να ρυθμίσετε, να δημιουργήσετε ευρετήριο εγγράφων και να εκτελέσετε + ισχυρά ερωτήματα regex. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: Πώς να κάνετε αναζήτηση με regex στη Java με τον οδηγό GroupDocs.Search +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: Πώς να κάνετε αναζήτηση με regex στη Java με τον οδηγό GroupDocs.Search +type: docs +url: /el/java/searching/groupdocs-search-java-regex-tutorial/ +weight: 1 +--- + +# Πώς να κάνετε αναζήτηση με regex στη Java με το GroupDocs.Search + +Η αναζήτηση σε χιλιάδες έγγραφα κειμένου μπορεί να μοιάζει με το να ψάχνεις για βελόνι σε άχυρο. Η **Πώς να κάνετε αναζήτηση με regex** στη Java γίνεται εύκολη όταν συνδυάζετε τη δυνατή μηχανή κανονικών εκφράσεων της γλώσσας με το GroupDocs.Search, μια βιβλιοθήκη που δημιουργεί ένα ευρετήριο για αστραπιαία ταχεία αντιστοίχιση προτύπων. Στα επόμενα λεπτά θα δείτε πώς να εγκαταστήσετε τη βιβλιοθήκη, να δημιουργήσετε ένα ευρετήριο, να προσθέσετε αρχεία και να εκτελέσετε τόσο απλές ερωτήσεις κειμένου όσο και αντικειμενοστραφείς ερωτήσεις regex. Στο τέλος θα είστε έτοιμοι να ενσωματώσετε μια ισχυρή αναζήτηση με αντιστοίχιση προτύπων σε οποιαδήποτε εφαρμογή Java. + +## Γρήγορες Απαντήσεις +- **Ποια είναι η κύρια βιβλιοθήκη;** GroupDocs.Search for Java +- **Πώς ξεκινάω;** Add the Maven dependency and instantiate an `Index` object +- **Μπορώ να φιλτράρω περιεχόμενο με regex;** Yes – use regex queries for content‑filtering scenarios +- **Χρειάζομαι άδεια;** A free trial or temporary license is required for production use +- **Ποια έκδοση JDK υποστηρίζεται;** Java 8 or higher + +## Τι είναι η Αναζήτηση με Regex; +Η αναζήτηση με regex σας επιτρέπει να εντοπίζετε πρότυπα όπως ημερομηνίες, διευθύνσεις email ή επαναλαμβανόμενους χαρακτήρες σε πολλά αρχεία με μία μόνο ενέργεια. Μετατρέπει ένα ερώτημα απλού κειμένου σε έναν ισχυρό, βασισμένο σε κανόνες σαρωτή που μπορεί να εξάγει ή να αποκλείει περιεχόμενο άμεσα. + +## Γιατί να χρησιμοποιήσετε το GroupDocs.Search για Αναζήτηση με Regex; +Το GroupDocs.Search ευρετηριάζει τα έγγραφα μία φορά και στη συνέχεια επαναχρησιμοποιεί αυτό το ευρετήριο για κάθε ερώτημα, παρέχοντας **έως 10× ταχύτερες** αναζητήσεις σε σύγκριση με την ακατέργαστη σάρωση αρχείων. Η βιβλιοθήκη υποστηρίζει **πάνω από 30 μορφές αρχείων** (PDF, DOCX, XLSX, PPTX, TXT, HTML και άλλα) και μπορεί να διαχειριστεί αρχεία πολλών εκατοντάδων σελίδων χωρίς να φορτώνει ολόκληρο το αρχείο στη μνήμη. + +## Προαπαιτούμενα +- Java Development Kit (JDK) 8 ή νεότερο +- Maven για διαχείριση εξαρτήσεων +- Βασική εξοικείωση με τις κανονικές εκφράσεις της Java + +### Απαιτούμενες Βιβλιοθήκες και Εξαρτήσεις +Προσθέστε το GroupDocs.Search στο Maven project σας: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +Εναλλακτικά, κατεβάστε το πιο πρόσφατο JAR από [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Απόκτηση Άδειας +Αποκτήστε μια δωρεάν δοκιμή ή προσωρινή άδεια από το [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) και φορτώστε την κατά την εκκίνηση της εφαρμογής. + +## Ρύθμιση του GroupDocs.Search για Java + +### Πληροφορίες Εγκατάστασης +1. **Ενσωμάτωση Maven:** Add the repository and dependency shown above to your `pom.xml`. +2. **Άμεση Λήψη:** Place the JAR files on your project’s classpath. +3. **Εφαρμογή Άδειας:** Load the license file at application start‑up. + +```java +import com.groupdocs.search.*; + +public class SearchSetup { + public static void main(String[] args) { + // Initialize the index by specifying a directory. + String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; + Index index = new Index(indexFolder); + + System.out.println("Index created successfully at: " + indexFolder); + } +} +``` + +## Κύρια Συστατικά +Η κλάση `Index` είναι το κύριο συστατικό που αποθηκεύει τα αναζητήσιμα tokens που εξάγονται από τα έγγραφά σας. Επιτρέπει γρήγορη αναζήτηση οποιουδήποτε όρου ή προτύπου χωρίς επαναφόρτωση των αρχικών αρχείων. + +## Πώς να Δημιουργήσετε Ευρετήριο +Η δημιουργία ενός ευρετηρίου είναι απλή: δημιουργήστε μια παρουσία της κλάσης `Index` με μια διαδρομή φακέλου όπου θα αποθηκευτούν τα αρχεία του ευρετηρίου. Ο κατασκευαστής δημιουργεί τα απαραίτητα αρχεία βάσης δεδομένων κατά την πρώτη χρήση και προετοιμάζει τη μηχανή για προσθήκη και αναζήτηση εγγράφων. Μόλις δημιουργηθεί, επαναχρησιμοποιήστε το ίδιο ευρετήριο για όλες τις ερωτήσεις. + +```java +String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; +Index index = new Index(indexFolder); +``` + +## Πώς να Προσθέσετε Έγγραφα +Για να κάνετε ένα αρχείο αναζητήσιμο, καλέστε `index.add` με ένα αντικείμενο `Document` (ή `DocumentInfo`) που δείχνει στη διαδρομή του αρχείου. Η βιβλιοθήκη αναλύει το περιεχόμενο, εξάγει tokens και τα αποθηκεύει στο ευρετήριο. Αυτή η λειτουργία μπορεί να εκτελεστεί για μεμονωμένα αρχεία ή παρτίδες, και οι ενημερώσεις συγχωνεύονται σταδιακά. + +```java +index.add("YOUR_DOCUMENT_DIRECTORY"); +system.out.println("Documents added to the index."); +``` + +## Πώς να Εκτελέσετε Αναζήτηση Κανονικής Έκφρασης σε Μορφή Κειμένου +`RegexQuery` ορίζει ένα ερώτημα αναζήτησης βασισμένο σε κανονική έκφραση. Φορτώστε ένα `RegexQuery` με ένα πρότυπο απλού κειμένου και περάστε το στη μέθοδο `search` του `Index`. Η μηχανή αξιολογεί το πρότυπο έναντι των ευρετηριασμένων tokens και επιστρέφει τις αντίστοιχες αναφορές εγγράφων, κάνοντας τις μοναδικές αναζητήσεις γρήγορες και απλές. + +```java +String query1 = "^((.)\\2{1,})"; +``` + +## Πώς να Εκτελέσετε Αναζήτηση Κανονικής Έκφρασης σε Μορφή Αντικειμένου +`RegexQuery` μπορεί επίσης να δημιουργηθεί ως αντικείμενο και να επαναχρησιμοποιηθεί σε πολλαπλές αναζητήσεις. Ορίστε το ερώτημα μία φορά, διαμορφώστε επιλογές όπως η αδιαφορία πεζών-κεφαλαίων ή η ασαφής αντιστοίχιση, και καλέστε επανειλημμένα το `index.search`. Αυτή η προσέγγιση βελτιώνει την απόδοση όταν το ίδιο πρότυπο εφαρμόζεται σε πολλά διαφορετικά σύνολα εγγράφων. + +```java +SearchResult result1 = index.search(query1); +system.out.println("Number of occurrences found: " + result1.getDocumentCount()); +``` + +## Περιπτώσεις Χρήσης Φιλτραρίσματος Περιεχομένου με Regex +Μπορείτε να χρησιμοποιήσετε regex για να αποκλείετε ή να σηματοδοτείτε αυτόματα περιεχόμενο που ταιριάζει σε ορισμένα πρότυπα, όπως: +- Ανίχνευση επαναλαμβανόμενων χαρακτήρων για φιλτράρισμα spam +- Εύρεση ακολουθιών τύπου αριθμού πιστωτικής κάρτας για ελέγχους ιδιωτικότητας δεδομένων +- Εξαγωγή ημερομηνιών ή ταυτοτήτων για επεξεργασία downstream + +## Πρακτικές Εφαρμογές +1. **Συστήματα Διαχείρισης Εγγράφων:** Εντοπίστε συμβάσεις, τιμολόγια ή πολιτικές με βάση το πρότυπο (π.χ., αριθμούς τιμολογίων). +2. **Διαχείριση Περιεχομένου:** Εφαρμόστε κανόνες regex για να διαχειριστείτε κείμενα που δημιουργούν χρήστες σε φόρουμ ή εφαρμογές συνομιλίας. +3. **Εξαγωγή Δεδομένων:** Ανακτήστε δομημένα δεδομένα όπως αριθμούς παραγγελιών από αδόμητα PDFs ή αρχεία Word. + +## Σκέψεις για την Απόδοση +- **Ενημερώσεις Ευρετηρίου:** Καλέστε `index.add` όποτε αλλάζουν τα αρχεία προέλευσης για να διατηρείτε τα αποτελέσματα ενημερωμένα. +- **Διαχείριση Μνήμης:** Για σώματα δεδομένων που υπερβαίνουν το 1 εκατομμύριο έγγραφα, ενεργοποιήστε την σταδιακή ευρετηρίαση για να διατηρείτε τη χρήση της μνήμης heap υπό έλεγχο. +- **Σχεδίαση Regex:** Διατηρήστε τα πρότυπα σύντομα· ένα πρότυπο όπως `\d{4}-\d{2}-\d{2}` εκτελείται 3× πιο γρήγορα από μια έκφραση με πολλά μπαλαντέρ όπως `.*`. + +## Συμπέρασμα +Τώρα γνωρίζετε **πώς να κάνετε αναζήτηση με regex** στη Java χρησιμοποιώντας το GroupDocs.Search, από την εγκατάσταση της βιβλιοθήκης και τη δημιουργία ευρετηρίου μέχρι την εκτέλεση τόσο ερωτημάτων κειμένου όσο και αντικειμενοστραφών ερωτημάτων. Αυτές οι τεχνικές σας επιτρέπουν να προσθέσετε γρήγορη, προτύπου‑συνειδητή αναζήτηση σε οποιαδήποτε εφαρμογή Java, είτε δημιουργείτε μια πύλη εγγράφων, έναν σαρωτή συμμόρφωσης ή μια γραμμή εξόρυξης δεδομένων. + +## Συχνές Ερωτήσεις + +**Q:** Ποια είναι η διαφορά μεταξύ ερωτημάτων regex βασισμένων σε κείμενο και ερωτημάτων βασισμένων σε αντικείμενο στο GroupDocs.Search; +**A:** Τα ερωτήματα βασισμένα σε κείμενο είναι γρήγορα one‑liners, ενώ τα ερωτήματα βασισμένα σε αντικείμενο παρέχουν επαναχρησιμοποιήσιμες, τύπου‑ασφαλείς ορισμούς που μπορούν να αποθηκευτούν και να επαναχρησιμοποιηθούν σε πολλαπλές αναζητήσεις. + +**Q:** Μπορεί το GroupDocs.Search να ευρετηριάσει μη‑κείμενα έγγραφα όπως PDF ή αρχεία Excel; +**A:** Ναι, η βιβλιοθήκη εξάγει αναζητήσιμο κείμενο από PDF, DOCX, XLSX, PPTX και πάνω από 30 άλλες μορφές. + +**Q:** Πώς ενημερώνω ένα υπάρχον ευρετήριο αναζήτησης μετά την προσθήκη νέων αρχείων; +**A:** Καλέστε `index.add` με τα νέα ή τροποποιημένα έγγραφα· η βιβλιοθήκη θα συγχωνεύσει τις αλλαγές χωρίς να ξαναχτίσει ολόκληρο το ευρετήριο. + +**Q:** Ποια είναι τα κοινά προβλήματα κατά τη χρήση regex με το GroupDocs.Search; +**A:** Πολύ γενικά πρότυπα (π.χ., `.*`) μπορούν να προκαλέσουν μείωση της απόδοσης, και εσφαλμένες εκφράσεις μπορεί να μην επιστρέψουν αποτελέσματα. Πάντα δοκιμάζετε τα πρότυπα σε ένα δείγμα πρώτα. + +**Q:** Πού μπορώ να βρω πιο προχωρημένα tutorials για το GroupDocs.Search; +**A:** Επισκεφθείτε την [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) για αναλυτικούς οδηγούς, αναφορές API και παραδείγματα έργων. + +--- + +**Τελευταία Ενημέρωση:** 2026-07-31 +**Δοκιμάστηκε Με:** GroupDocs.Search 25.4 +**Συγγραφέας:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## Σχετικά Μαθήματα + +- [Master GroupDocs.Search Java: Αποτελεσματική Αναζήτηση Εγγράφων και Διαχείριση Ευρετηρίου](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [Mastering GroupDocs.Search Java: Οδηγός Ασαφούς Αναζήτησης & Ευρετηρίου Εγγράφων](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [Πώς να Ευρετηριάσετε Κείμενο στη Java με τον Οδηγό GroupDocs.Search](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/greek/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/greek/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..7b9465199 --- /dev/null +++ b/content/greek/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,277 @@ +--- +date: '2026-07-31' +description: Μάθετε πώς να υλοποιήσετε case insensitive search java προσθέτοντας έγγραφα + σε ένα ευρετήριο με το GroupDocs.Search, χρησιμοποιώντας αντικατάσταση χαρακτήρων + για την κανονικοποίηση του κειμένου κατά την ευρετηρίαση. +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: Case insensitive search java σας επιτρέπει να προσθέτετε έγγραφα σε + ένα ευρετήριο και να τα ερωτάτε χωρίς να ανησυχείτε για το γράμμα-περίπτωση. Αυτός + ο οδηγός δείχνει πώς το GroupDocs.Search κανονικοποιεί το κείμενο κατά την ευρετηρίαση + για γρήγορα, αξιόπιστα αποτελέσματα. +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Case Insensitive Search Java – Ευρετηρίαση Εγγράφων με GroupDocs +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: Προσθήκη εγγράφων στο ευρετήριο για Case‑Insensitive Search σε Java +type: docs +url: /el/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# Προσθήκη Εγγράφων στο Ευρετήριο για Αναζήτηση χωρίς Διάκριση Πεζών‑Κεφαλαίων σε Java + +Όταν χρειάζεστε **case insensitive search java** που βρίσκει αξιόπιστα πληροφορίες ανεξάρτητα από το πώς τις πληκτρολογούν οι χρήστες, το κλειδί είναι η προσθήκη εγγράφων σε ένα ευρετήριο ενώ κανονικοποιείται το κείμενο. Σε αυτό το σεμινάριο θα σας καθοδηγήσουμε στη διαμόρφωση του GroupDocs.Search για Java ώστε κάθε έγγραφο που ευρετηριάζετε να μετατρέπεται αυτόματα σε πεζά (ή με άλλη μετατροπή) κατά τη διαδικασία ευρετηρίασης, εξασφαλίζοντας αποτελέσματα χωρίς διάκριση πεζών‑κεφαλαίων χωρίς πρόσθετη λογική κατά το ερώτημα. + +## Γρήγορες Απαντήσεις +- **What does “add documents to index” mean?** Σημαίνει τη φόρτωση των αρχικών αρχείων σε μια δομή δεδομένων αναζήτησης ώστε να μπορούν να ερωτηθούν αργότερα. +- **Why use character replacement?** Κανονικοποιεί κάθε χαρακτήρα — συνήθως σε πεζά — ώστε οι αναζητήσεις να αγνοούν αυτόματα τις διαφορές πεζών‑κεφαλαίων. +- **Do I need a license?** Μια δωρεάν δοκιμή λειτουργεί για ανάπτυξη· απαιτείται πλήρης άδεια για παραγωγικές εγκαταστάσεις. +- **Which Java version is required?** Η έκδοση Java 8 ή νεότερη· η βιβλιοθήκη στοχεύει σε Java 11+ για βέλτιστη απόδοση. +- **Can I switch to case‑sensitive search when needed?** Ναι—οι επιλογές αναζήτησης σας επιτρέπουν να εναλλάσσετε τη διάκριση πεζών‑κεφαλαίων ανά ερώτημα. + +## Τι σημαίνει “add documents to index” στο GroupDocs.Search; +Φορτώστε τα αρχεία προέλευσης (PDF, DOCX, TXT κ.λπ.) σε ένα αναζητήσιμο ευρετήριο ώστε η μηχανή να μπορεί να τα ανακτήσει γρήγορα. Η προσθήκη εγγράφων σε ένα ευρετήριο αναλύει κάθε αρχείο, εξάγει απλό κείμενο και το αποθηκεύει σε μια βελτιστοποιημένη δομή δεδομένων που επιτρέπει γρήγορες αναζητήσεις. + +## Γιατί να ενεργοποιήσετε την αντικατάσταση χαρακτήρων κατά την ευρετηρίαση; +Η αντικατάσταση χαρακτήρων μετατρέπει κάθε χαρακτήρα σε ένα προκαθορισμένο ισοδύναμο — συνήθως σε πεζά — κατά τη δημιουργία του ευρετηρίου. Αυτό εξασφαλίζει ότι οι διαφορές στην κεφαλαιοποίηση, τα διακριτικά ή τα σύμβολα ειδικά για την περιοχή δεν επηρεάζουν τα αποτελέσματα αναζήτησης. Κανονικοποιώντας το κείμενο κατά τη φάση ευρετηρίασης, η μηχανή μπορεί να ταιριάζει τα ερωτήματα με ένα συνεπές σύνολο διακριτικών, παρέχοντας γρήγορη, αξιόπιστη συμπεριφορά χωρίς διάκριση πεζών‑κεφαλαίων χωρίς επιπλέον επεξεργασία σε κάθε αναζήτηση. + +## Προαπαιτούμενα +- **GroupDocs.Search for Java** έκδοση 25.4 ή νεότερη (η βιβλιοθήκη υποστηρίζει πάνω από 30 μορφές αρχείων και μπορεί να ευρετηριάσει έγγραφα πολλαπλών εκατοντάδων σελίδων χωρίς να φορτώνει ολόκληρο το αρχείο στη μνήμη). +- **Java Development Kit (JDK)** 8 ή νεότερο εγκατεστημένο. +- Βασική εξοικείωση με **Maven** (ή δυνατότητα προσθήκης JAR χειροκίνητα). + +## Ρύθμιση του GroupDocs.Search για Java + +### Ρύθμιση Maven +Προσθέστε το αποθετήριο GroupDocs και την εξάρτηση στο `pom.xml` σας: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### Άμεση Λήψη +Αν προτιμάτε να μην χρησιμοποιήσετε Maven, κατεβάστε το τελευταίο JAR από την επίσημη ιστοσελίδα: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Απόκτηση Άδειας +- **Free Trial** – κατεβάστε μια δοκιμαστική άδεια για να ξεκινήσετε πειραματισμό. +- **Temporary License** – ζητήστε μια εκτεταμένη δοκιμαστική άδεια από το portal του GroupDocs. +- **Full License** – αγοράστε μια παραγωγική άδεια όταν είστε έτοιμοι να ξεκινήσετε. + +### Βασική Αρχικοποίηση (Δημιουργία του ευρετηρίου) +Το παρακάτω απόσπασμα δημιουργεί έναν φάκελο ευρετηρίου και ενεργοποιεί τις αντικαταστάσεις χαρακτήρων: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## Οδηγός Υλοποίησης + +### Ενεργοποίηση Αντικατάστασης Χαρακτήρων στις Ρυθμίσεις Ευρετηρίου +Η ενεργοποίηση αυτής της λειτουργίας ενημερώνει τη μηχανή να αντικαθιστά χαρακτήρες κατά την ευρετηρίαση, που αποτελεί το βασικό βήμα για τη συμπεριφορά χωρίς διάκριση πεζών‑κεφαλαίων. + +#### Βήμα 1: Διαμόρφωση του `IndexSettings` +`IndexSettings` είναι το αντικείμενο διαμόρφωσης που ελέγχει πώς το ευρετήριο αποθηκεύει και επεξεργάζεται το κείμενο. Ορίζοντας το `useCharacterReplacements` σε **true**, ενεργοποιείτε την αυτόματη μετατροπή σε πεζά (ή οποιονδήποτε προσαρμοσμένο χάρτη παρέχετε). + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### Διαμόρφωση Αντικατάστασης Χαρακτήρων +Αντιστοιχίστε κάθε χαρακτήρα με το αντίστοιχο πεζό (ή οποιονδήποτε προσαρμοσμένο χάρτη χρειάζεστε). + +#### Βήμα 2: Ορισμός και Προσθήκη Ζευγών Αντικατάστασης +Το λεξικό αντικατάστασης περιέχει ζεύγη όπως `'A' → 'a'`, `'É' → 'e'`, κ.λπ. Η προσθήκη αυτών των ζευγών πριν την ευρετηρίαση εξασφαλίζει ότι κάθε διακριτικό είναι κανονικοποιημένο. + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### Ευρετηρίαση Εγγράφων +Τώρα που το ευρετήριο είναι έτοιμο, μπορείτε να **add documents to index** από οποιονδήποτε φάκελο. + +#### Βήμα 3: Προσθήκη Εγγράφων για Ευρετηρίαση +Το GroupDocs.Search σαρώει τον προορισμό, εξάγει κείμενο από κάθε υποστηριζόμενο τύπο αρχείου, εφαρμόζει τον χάρτη αντικατάστασης και γράφει τα διακριτικά στην αποθήκη του ευρετηρίου. + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### Εκτέλεση Αναζήτησης με Διάκριση Πεζών‑Κεφαλαίων (Προαιρετικό) + +#### Βήμα 4: Εκτέλεση Αναζητήσεων με Διάκριση Πεζών‑Κεφαλαίων +`SearchOptions` διαμορφώνει τη συμπεριφορά του ερωτήματος, όπως η εναλλαγή της διάκρισης πεζών‑κεφαλαίων, επιτρέποντας λεπτομερή έλεγχο του τρόπου εκτέλεσης των αναζητήσεων. +`SearchOptions.setUseCaseSensitiveSearch(true)` αναγκάζει τη μηχανή να αντιμετωπίζει τους κεφαλαίους και πεζούς χαρακτήρες ως διαφορετικούς κατά ένα συγκεκριμένο ερώτημα, παρακάμπτοντας τη προεπιλεγμένη συμπεριφορά χωρίς διάκριση πεζών‑κεφαλαίων. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## Πρακτικές Εφαρμογές +1. **Marketing Campaigns** – Κανονικοποιήστε τα ονόματα προϊόντων ώστε οι ομάδες πωλήσεων να μπορούν να εντοπίζουν τα περιουσιακά στοιχεία χωρίς να ανησυχούν για την κεφαλαιοποίηση. +2. **Customer Support** – Ενισχύστε τα πλαίσια αναζήτησης του help‑desk που επιστρέφουν το σωστό άρθρο είτε ο χρήστης πληκτρολογήσει “login” είτε “Login”. +3. **E‑commerce Catalogs** – Διασφαλίστε ότι οι αγοραστές βρίσκουν τα προϊόντα ανεξάρτητα από το πώς πληκτρολογούν τους τίτλους, βελτιώνοντας τα ποσοστά μετατροπής. + +## Σκέψεις Απόδοσης +- **Organize Source Files** – Μια τακτοποιημένη ιεραρχία φακέλων μειώνει το χρόνο σάρωσης κατά το βήμα **add documents to index**. +- **Monitor Memory** – Η ευρετηρίαση μεγάλων σωμάτων κειμένου μπορεί να καταναλώσει σημαντική μνήμη RAM· η επεξεργασία αρχείων σε παρτίδες των 500 – 1 000 στοιχείων διατηρεί τη χρήση του σωρού υπό έλεγχο. +- **Asynchronous Indexing** – Όταν υποστηρίζεται, εκτελέστε την ευρετηρίαση σε νήμα παρασκηνίου για να διατηρήσετε το UI ανταποκρινόμενο και να αποφύγετε το μπλοκάρισμα των λειτουργιών του χρήστη. + +## Συχνά Προβλήματα & Επίλυση +| Σύμπτωμα | Πιθανή Αιτία | Διόρθωση | +|----------|--------------|----------| +| Δεν επιστρέφονται αποτελέσματα για γνωστό όρο | Οι αντικαταστάσεις χαρακτήρων δεν είναι ενεργοποιημένες | Επαληθεύστε ότι το `settings.setUseCharacterReplacements(true)` είναι ενεργό και ότι ο χάρτης αντικατάστασης περιέχει τους απαιτούμενους χαρακτήρες. | +| Σφάλμα έλλειψης μνήμης (Out‑of‑memory) κατά την ευρετηρίαση | Ευρετηρίαση πάρα πολλών μεγάλων αρχείων ταυτόχρονα | Ευρετηρίαση σε μικρότερες παρτίδες ή αύξηση του heap της JVM (`-Xmx4g`). | +| Η αναζήτηση επιστρέφει αποτελέσματα με διάκριση πεζών‑κεφαλαίων απροσδόκητα | Το `SearchOptions.setUseCaseSensitiveSearch(true)` είχε οριστεί | Αφαιρέστε ή ορίστε σε `false` για την προεπιλεγμένη συμπεριφορά χωρίς διάκριση πεζών‑κεφαλαίων. | +| Ο χρόνος φόρτωσης του ευρετηρίου υπερβαίνει τις προσδοκίες | Αναποτελεσματική διάταξη φακέλων ή μη χρήση SSD | Αναδιοργανώστε τα αρχεία, αφαιρέστε αχρησιμοποίητα έγγραφα και αποθηκεύστε το ευρετήριο σε γρήγορο SSD. | +| Οι ειδικοί χαρακτήρες αγνοούνται | Ο χάρτης αντικατάστασης δεν περιέχει εγγραφές Unicode | Προσθέστε αντιστοιχίες για χαρακτήρες όπως “é”, “ß”, “ø” στα επιθυμητά ισοδύναμα. | + +## Συχνές Ερωτήσεις + +**Q: Πώς να διαχειριστώ ειδικούς χαρακτήρες (π.χ., “é”, “ß”) κατά την ευρετηρίαση;** +A: Συμπεριλάβετε αυτούς τους χαρακτήρες στο χάρτη αντικατάστασης, αντιστοιχίζοντάς τους στα ισοδύναμα ASCII ή διατηρώντας τους αμετάβλητους ανάλογα με τις απαιτήσεις αναζήτησης. + +**Q: Μπορώ να περιορίσω την αντικατάσταση χαρακτήρων σε συγκεκριμένη γλώσσα;** +A: Ναι. Δημιουργήστε έναν προσαρμοσμένο πίνακα αντικατάστασης που περιέχει μόνο τους χαρακτήρες της επιλεγμένης γλώσσας πριν τον προσθέσετε στο λεξικό. + +**Q: Τι πρέπει να κάνω αν η φόρτωση του ευρετηρίου διαρκεί πολύ;** +A: Βελτιστοποιήστε τη δομή των φακέλων, αφαιρέστε περιττά αρχεία και αποθηκεύστε το ευρετήριο σε γρήγορο SSD. Η επαυξητική (incremental) ευρετηρίαση μειώνει επίσης το φορτίο φόρτωσης. + +**Q: Είναι δυνατόν να αναιρέσω τις αντικαταστάσεις χαρακτήρων μετά την ευρετηρίαση;** +A: Όχι. Οι αντικαταστάσεις ενσωματώνονται στα δεδομένα του ευρετηρίου· πρέπει να ξαναδημιουργήσετε το ευρετήριο με νέες ρυθμίσεις για να τις αλλάξετε. + +**Q: Πού μπορώ να βρω πιο αναλυτική τεκμηρίωση API;** +A: Η επίσημη τεκμηρίωση και η αναφορά API παρέχουν λεπτομερείς πληροφορίες (δείτε τους Πόρους παρακάτω). + +## Πόροι +- [Τεκμηρίωση](https://docs.groupdocs.com/search/java/) +- [Αναφορά API](https://reference.groupdocs.com/search/java) +- [Λήψη GroupDocs.Search](https://releases.groupdocs.com/search/java/) +- [Αποθετήριο GitHub](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [Δωρεάν Φόρουμ Υποστήριξης](https://forum.groupdocs.com/c/search/10) +- [Πληροφορίες Προσωρινής Άδειας](https://purchase.groupdocs.com/temporary-license/) + +--- + +**Τελευταία Ενημέρωση:** 2026-07-31 +**Δοκιμάστηκε Με:** GroupDocs.Search 25.4 for Java +**Συγγραφέας:** GroupDocs + +## Σχετικά Μαθήματα + +- [Αντικατάσταση Χαρακτήρων στο GroupDocs.Search Java: Ένας Πλήρης Οδηγός για τη Βελτίωση της Αναζήτησης Κειμένου και της Ευρετηρίασης](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [Προσθήκη εγγράφων στο ευρετήριο: αναζήτηση Java με διάκριση πεζών‑κεφαλαίων με το GroupDocs](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [Πώς να Προσθέσετε Έγγραφα στο Ευρετήριο με το GroupDocs.Search για Java](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/greek/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/greek/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..630e2396e --- /dev/null +++ b/content/greek/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,307 @@ +--- +date: '2026-07-31' +description: Μάθετε πώς να δημιουργήσετε αξιόπιστη καταγραφή .NET χρησιμοποιώντας + το GroupDocs, υλοποιώντας έναν προσαρμοσμένο console logger και αξιοποιώντας το + ενσωματωμένο FileLogger για αποτελεσματική παρακολούθηση. +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: Μάθετε πώς να δημιουργήσετε αξιόπιστη καταγραφή .NET χρησιμοποιώντας + το GroupDocs, υλοποιώντας έναν προσαρμοσμένο console logger και αξιοποιώντας το + ενσωματωμένο FileLogger για αποτελεσματική παρακολούθηση. +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: Δημιουργήστε Αξιόπιστη Καταγραφή .NET με GroupDocs Console Logger +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: Δημιουργήστε Αξιόπιστη Καταγραφή .NET με GroupDocs Console Logger +type: docs +url: /el/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# Δημιουργία Αξιόπιστης Καταγραφής .NET με τον GroupDocs Console Logger + +## Εισαγωγή + +Αντιμετωπίζετε δυσκολίες στο να παρακολουθείτε τα σφάλματα και τις λειτουργίες εντοπισμού στα .NET εφαρμογές σας; **Create robust .NET logging** είναι απαραίτητο για την παρακολούθηση της απόδοσης, την αποσφαλμάτωση προβλημάτων και τη διατήρηση ομαλής λειτουργίας. Αυτό το σεμινάριο σας καθοδηγεί στη δημιουργία ενός προσαρμοσμένου logger κονσόλας χρησιμοποιώντας το GroupDocs.Search, ενώ επίσης δείχνει πώς να ενσωματώσετε το GroupDocs.Redaction για .NET. Στο τέλος, θα έχετε μια διαφανή, εύκολη στη συντήρηση λύση καταγραφής που εντάσσεται άμεσα στον υπάρχοντα κώδικά σας. + +## Γρήγορες Απαντήσεις +- **Τι κάνει ο προσαρμοσμένος logger;** Γράφει τις καταγραφές απευθείας στην κονσόλα για άμεση ανάδραση κατά την ανάπτυξη. +- **Ποιο στοιχείο του GroupDocs παρέχει καταγραφή σε αρχείο;** Η ενσωματωμένη κλάση `FileLogger` διαχειρίζεται μόνιμα αρχεία καταγραφής. +- **Χρειάζομαι άδεια;** Μια προσωρινή άδεια λειτουργεί για δοκιμές· απαιτείται πλήρης άδεια για παραγωγή. +- **Ποιες εκδόσεις .NET υποστηρίζονται;** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **Είναι η λύση thread‑safe;** Ναι—και οι `ConsoleLogger` και `FileLogger` έχουν σχεδιαστεί για ταυτόχρονη χρήση. + +## Τι σημαίνει “create robust .NET logging”; +**Create robust .NET logging** σημαίνει την εγκαθίδρυση μιας αξιόπιστης, υψηλής απόδοσης γραμμής καταγραφής που συλλαμβάνει σφάλματα, προειδοποιήσεις και πληροφοριακά μηνύματα σε όλα τα επίπεδα μιας εφαρμογής. Με το GroupDocs, μπορείτε να το επιτύχετε χρησιμοποιώντας τόσο στόχους κονσόλας όσο και αρχείου, διατηρώντας τη διαμόρφωση απλή. + +## Γιατί να χρησιμοποιήσετε το GroupDocs για καταγραφή .NET; +GroupDocs υποστηρίζει **30+ .NET πλατφόρμες** και μπορεί να επεξεργαστεί έγγραφα έως **2 GB** χωρίς αισθητή επίπτωση στην απόδοση. Τα APIs καταγραφής του είναι ελαφριά, thread‑safe και ενσωματώνονται άψογα με υπάρχοντα πρότυπα διαχείρισης εξαιρέσεων, παρέχοντάς σας μια αποδεδειγμένη, επιχειρησιακού επιπέδου λύση. + +## Προαπαιτούμενα + +- **Απαιτούμενες Βιβλιοθήκες και Εκδόσεις:** GroupDocs.Search for .NET and GroupDocs.Redaction for .NET (latest compatible releases). +- **Ρύθμιση Περιβάλλοντος:** Visual Studio 2022 or any .NET‑compatible IDE. +- **Προαπαιτούμενες Γνώσεις:** Familiarity with C# syntax and basic logging concepts. + +## Ρύθμιση του GroupDocs.Redaction για .NET + +Αρχικά, προσθέστε το GroupDocs.Redaction στο έργο σας. Επιλέξτε τη μέθοδο που ταιριάζει καλύτερα στη ροή εργασίας σας. + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +Αναζητήστε το “GroupDocs.Redaction” και εγκαταστήστε την πιο πρόσφατη έκδοση. + +### Απόκτηση Άδειας + +Για να ξεκινήσετε, μπορείτε να αποκτήσετε μια προσωρινή άδεια ή να αγοράσετε μια πλήρη. Αυτό θα σας επιτρέψει να εξερευνήσετε όλες τις δυνατότητες χωρίς περιορισμούς. Επισκεφθείτε [GroupDocs' official site](https://purchase.groupdocs.com/temporary-license/) για περισσότερες λεπτομέρειες σχετικά με την απόκτηση της άδειάς σας. + +### Βασική Αρχικοποίηση και Ρύθμιση + +Η κλάση `Redactor` παρέχει APIs για την τροποποίηση και διαγραφή περιεχομένου σε υποστηριζόμενα έγγραφα. +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## Οδηγός Υλοποίησης + +### Πώς να υλοποιήσετε έναν προσαρμοσμένο logger κονσόλας με το GroupDocs; + +Φορτώστε τον προσαρμοσμένο logger δημιουργώντας μια παρουσία της `ConsoleLogger` και περνώντας την στο `SearchOptions` ή σε οποιοδήποτε στοιχείο του GroupDocs που δέχεται ένα `ILogger`. Ο logger γράφει κάθε μήνυμα στο `Console.WriteLine`, παρέχοντάς σας άμεση ορατότητα του τι κάνει η βιβλιοθήκη, και σας βοηθά να εντοπίζετε γρήγορα προβλήματα κατά την ανάπτυξη. + +Η κλάση `ConsoleLogger` υλοποιεί το `ILogger` για να γράφει μηνύματα καταγραφής απευθείας στην κονσόλα. +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Βήμα 1: Ορισμός Προσαρμοσμένου Logger** +Create a new class named `ConsoleLogger`: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Βήμα 2: Ενσωμάτωση με το GroupDocs.Search** + +`SearchOptions` διαμορφώνει τη συμπεριφορά αναζήτησης και δέχεται ένα `ILogger` για καταγραφή. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Τι είναι το FileLogger και πότε να το χρησιμοποιήσετε; + +Η κλάση `FileLogger` υλοποιεί το `ILogger` και αποθηκεύει τις καταγραφές σε αρχείο στο δίσκο, καθιστώντας την ιδανική για περιβάλλοντα παραγωγής όπου απαιτούνται ίχνη ελέγχου. Η κλάση `FileLogger` που παρέχεται από το GroupDocs γράφει τις καταγραφές σε καθορισμένο αρχείο στο δίσκο, καθιστώντας την τέλεια για περιβάλλοντα παραγωγής όπου χρειάζεστε μόνιμα ίχνη ελέγχου. Μπορείτε να διαμορφώσετε την περιστροφή των αρχείων, τα όρια μεγέθους αρχείου και τα επίπεδα καταγραφής ώστε να ταιριάζουν στις επιχειρησιακές σας απαιτήσεις. + +Η κλάση `FileLogger` υλοποιεί το `ILogger` και αποθηκεύει τις καταγραφές σε αρχείο στο δίσκο. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Γιατί να επιλέξετε το GroupDocs για καταγραφή .NET; + +Το GroupDocs προσφέρει ένα **ποσοτικοποιημένο** πλεονέκτημα: υποστηρίζει **πάνω από 50 μορφές εξόδου** και μπορεί να διαχειριστεί **έγγραφα με εκατοντάδες σελίδες** χωρίς να φορτώνει ολόκληρο το αρχείο στη μνήμη. Η υποδομή καταγραφής του προσθέτει λιγότερο από **2 ms** επιπλέον χρόνο ανά καταγραφή, εξασφαλίζοντας ότι η απόδοση παραμένει βέλτιστη ακόμη και υπό μεγάλο φορτίο. + +## Πρακτικές Εφαρμογές + +Ακολουθούν μερικά πρακτικά σενάρια όπου αυτές οι τεχνικές καταγραφής ξεχωρίζουν: + +1. **Παρακολούθηση Εφαρμογής:** Χρησιμοποιήστε το `ConsoleLogger` κατά την ανάπτυξη για να δείτε ζωντανές διαγνώσεις. +2. **Ιχνη Ελέγχου:** Αναπτύξτε το `FileLogger` για να διατηρήσετε καταγραφές συμμόρφωσης για ρυθμιστική αναφορά. +3. **Αποσφαλμάτωση:** Εκμεταλλευτείτε λεπτομερή μηνύματα εντοπισμού για να εντοπίσετε προβλήματα σε πολύπλοκες ροές αναζήτησης. +4. **Ανάλυση Απόδοσης:** Εξετάστε τις χρονικές σημάνσεις των καταγραφών για να εντοπίσετε σημεία συμφόρησης και να βελτιστοποιήσετε τη χρήση πόρων. + +## Παρατηρήσεις Απόδοσης + +Για να διατηρήσετε την καταγραφή γρήγορη και αποδοτική: + +- **Περιορισμός Λεπτότητας Καταγραφής:** Ορίστε το επίπεδο του logger σε `Info` ή `Warning` στην παραγωγή για να αποφύγετε υπερβολικό I/O. +- **Αποτελεσματική Χρήση Πόρων:** Διαμορφώστε το `FileLogger` με μέγιστο μέγεθος αρχείου 10 MB και ενεργοποιήστε την αυτόματη εναλλαγή. +- **Διαχείριση Μνήμης:** Αποδεσμεύστε τις παρουσίες του logger με μπλοκ `using` ή ρητές κλήσεις `Dispose()` για άμεση απελευθέρωση των πόρων. + +## Συχνές Ερωτήσεις + +**Q: Μπορώ να χρησιμοποιήσω τον προσαρμοσμένο logger κονσόλας σε μια πολυνηματική εφαρμογή;** +A: Ναι—και οι `ConsoleLogger` και `FileLogger` είναι thread‑safe, ώστε να μπορείτε να καταγράφετε από παράλληλες εργασίες χωρίς συνθήκες αγώνα. + +**Q: Χρειάζομαι ξεχωριστή άδεια για το GroupDocs.Search και το GroupDocs.Redaction;** +A: Μία ενιαία άδεια GroupDocs καλύπτει όλα τα modules, συμπεριλαμβανομένων των Search και Redaction, απλοποιώντας την προμήθεια. + +**Q: Πώς αλλάζω τη θέση του αρχείου καταγραφής για το FileLogger;** +A: Ορίστε την ιδιότητα `LogFilePath` κατά τη δημιουργία της παρουσίας `FileLogger`, π.χ., `new FileLogger("C:\\Logs\\app.log")`. + +**Q: Ποια επίπεδα καταγραφής υποστηρίζει το GroupDocs;** +A: Η βιβλιοθήκη παρέχει τα επίπεδα `Debug`, `Info`, `Warning`, `Error` και `Critical`, επιτρέποντας λεπτομερή έλεγχο της εξόδου. + +**Q: Μπορεί να συνδυαστεί η καταγραφή τόσο στην κονσόλα όσο και σε αρχείο ταυτόχρονα;** +A: Απόλυτα—δημιουργήστε έναν σύνθετο logger που προωθεί τα μηνύματα τόσο στο `ConsoleLogger` όσο και στο `FileLogger` για διπλή ορατότητα. + +## Πόροι + +- [Τεκμηρίωση GroupDocs Redaction](https://docs.groupdocs.com/search/net/) +- [Αναφορά API](https://reference.groupdocs.com/redaction/net) +- [Λήψη Βιβλιοθηκών GroupDocs](https://releases.groupdocs.com/search/net/) +- [Δωρεάν Φόρουμ Υποστήριξης](https://forum.groupdocs.com/c/search/10) +- [Απόκτηση Προσωρινής Άδειας](https://purchase.groupdocs.com/temporary-license/) + +## Συμπέρασμα + +Σε αυτόν τον οδηγό, δείξαμε πώς να **create robust .NET logging** δημιουργώντας έναν προσαρμοσμένο logger κονσόλας και αξιοποιώντας το ενσωματωμένο `FileLogger` του GroupDocs. Αυτά τα εργαλεία σας παρέχουν άμεση ορατότητα κατά την ανάπτυξη και αξιόπιστες, μόνιμες καταγραφές για παραγωγή. Εξερευνήστε διαφορετικές ρυθμίσεις επιπέδων καταγραφής, πειραματιστείτε με σύνθετους logger και ενσωματώστε τη λύση σε μεγαλύτερες υπηρεσίες για πλήρη παρατήρηση του στοίβας. + +**Επόμενα Βήματα** + +- Δοκιμάστε διαφορετικές ρυθμίσεις επιπέδων καταγραφής για να βρείτε το βέλτιστο σημείο μεταξύ λεπτομέρειας και απόδοσης. +- Προσθέστε δομημένη καταγραφή (έξοδο JSON) στο `FileLogger` για ευκολότερη ενσωμάτωση σε πλατφόρμες ανάλυσης καταγραφών. +- Εξερευνήστε άλλα modules του GroupDocs, όπως το Search και το Annotation, για να επεκτείνετε τη ροή επεξεργασίας εγγράφων σας. + +--- + +**Τελευταία Ενημέρωση:** 2026-07-31 +**Δοκιμάστηκε Με:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**Συγγραφέας:** GroupDocs + +--- + +## Σχετικά Μαθήματα + +- [Μαθήματα Διαχείρισης Εξαίρεσης και Καταγραφής για το GroupDocs.Search .NET](/search/net/exception-handling-logging/) +- [Υλοποίηση GroupDocs.Search και Redaction σε .NET για Διαχείριση Εγγράφων](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [Αριστεία στο GroupDocs Search και Redaction σε .NET: Προηγμένη Διαχείριση Εγγράφων](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/hindi/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/hindi/java/searching/groupdocs-search-java-regex-tutorial/_index.md index 61a05546a..3fe103707 100644 --- a/content/hindi/java/searching/groupdocs-search-java-regex-tutorial/_index.md +++ b/content/hindi/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -1,45 +1,101 @@ --- -date: '2026-02-01' -description: जावा में रेगएक्स खोज कैसे करें और GroupDocs.Search के साथ इंडेक्स कैसे - बनाएं, सीखें। यह ट्यूटोरियल सेटअप, इंडेक्सिंग और रेगएक्स खोज के जावा उदाहरणों को - कवर करता है। +date: '2026-07-31' +description: GroupDocs.Search का उपयोग करके Java में regex खोज कैसे करें, सीखें। यह + step‑by‑step ट्यूटोरियल setup, index creation, और तेज़ टेक्स्ट दस्तावेज़ विश्लेषण + के लिए regex query उदाहरण दिखाता है। keywords: -- regex searches -- GroupDocs.Search for Java -- Java text document analysis -title: 'जावा में रेगेक्स सर्च कैसे करें: टेक्स्ट दस्तावेज़ विश्लेषण के लिए GroupDocs.Search - में महारत हासिल करना' +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: GroupDocs.Search का उपयोग करके Java में regex खोज तेज़ पैटर्न मिलान + को PDFs, Word, और टेक्स्ट फ़ाइलों में सक्षम बनाता है। इस गाइड का पालन करके set up + करें, दस्तावेज़ों को index करें, और शक्तिशाली regex queries चलाएँ। +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: GroupDocs.Search गाइड के साथ Java में Regex खोज कैसे करें +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: GroupDocs.Search गाइड के साथ Java में Regex खोज कैसे करें type: docs url: /hi/java/searching/groupdocs-search-java-regex-tutorial/ weight: 1 --- -# जावा में रेग टेक्स्ट डॉक्यूमेंट एनालिसिस के लिए GroupDocs.Search में महारत हासिल करें +# जावा में GroupDocs.Search के साथ रेगेक्स खोज कैसे करें -बड़े हो सकती है। **How to regex search** जावा में GroupDocs.Search के साथ सरल हो जाता है, जो शक्तिशाली पैटर्न‑मैचिंग क्षमताएँ प्रदान करने वाली लाइब्रेरी है। इस गाइड में आप सीखेंगे कि पर्यावरण़ जोड़ें, और क्वेरी कैसे चलाएँ। अंत तक, आपके पास एक ठोस **regex search tutorial Java** होगा जिसे आप वास्तविक प्रोजेक्ट्स में लागू कर सकते हैं। +हजारों टेक्स्ट दस्तावेज़ों में खोज करना सूई को घास के ढेर में खोजने जैसा महसूस हो सकता है। **How to regex search** आसान हो जाता है जब आप भाषा के शक्तिशाली रेगुलर‑एक्सप्रेशन इंजन को GroupDocs.Search के साथ जोड़ते हैं, जो तेज़ पैटर्न मिलान के लिए एक इंडेक्स बनाता है। अगले कुछ मिनटों में आप देखेंगे कि लाइब्रेरी कैसे इंस्टॉल करें, एक इंडेक्स बनाएं, फ़ाइलें जोड़ें, और सरल टेक्स्ट‑आधारित तथा ऑब्जेक्ट‑ओरिएंटेड रेगेक्स क्वेरीज़ दोनों चलाएँ। अंत में आप किसी भी जावा एप्लिकेशन में मजबूत पैटर्न‑मैचिंग सर्च एम्बेड करने के लिए तैयार होंगे। ## त्वरित उत्तर -- **मुख्य लाइब्रेरी क्या है?** GroupDocs.Search for Java -- **शुरू कैसे करें?** Maven डिपेंडेंसी जोड़ें और एक `Index` ऑब्जेक्ट को इनिशियलाइज़ करें -- **क्या मैं रेगेक्स से कंटेंट फ़िल्टर कर सकता हूँ?** हाँ – कंटेंट फ़िल्टरिंग रेगेक्स परिदृश्यों के लिए रेगेक्स क्वेरीज़ का उपयोग करें -- **क्या मुझे लाइसेंस चाहिए?** प्रोडक्शन उपयोग के लिए एक फ्री ट्रायल या टेम्पररी लाइसेंस आवश्यक है +- **प्राथमिक लाइब्रेरी क्या है?** GroupDocs.Search for Java +- **मैं कैसे शुरू करूँ?** Maven निर्भरता जोड़ें और एक `Index` ऑब्जेक्ट बनाएं +- **क्या मैं रेगेक्स से सामग्री को फ़िल्टर कर सकता हूँ?** हाँ – कंटेंट‑फ़िल्टरिंग परिदृश्यों के लिए रेगेक्स क्वेरीज़ का उपयोग करें +- **क्या मुझे लाइसेंस चाहिए?** उत्पादन उपयोग के लिए एक फ्री ट्रायल या टेम्पररी लाइसेंस आवश्यक है - **कौन सा JDK संस्करण समर्थित है?** Java 8 या उससे ऊपर -## रेगेक्स सर्च क्या है? -रेगुलर एक्सप्रेशन (regex) सर्च आपको टेक्स्ट पैटर्न—जैसे तिथियां, ईमेल पते, या दोहराए गए अक्षर—को कई दस्तावेज़ों में एक ही ऑपरेशन में खोजने की सुविधा देता है। GroupDocs.Search इन पैटर्न को कुशल क्वेरीज़ में कंपाइल करता है जो बड़े डेटा सेट पर भी तेज़ चलती हैं। +## रेगेक्स खोज क्या है? +रेगेक्स खोज आपको एक ही ऑपरेशन में कई फ़ाइलों में तिथियों, ईमेल पते, या दोहराए गए अक्षरों जैसे पैटर्न खोजने देती है। यह साधारण टेक्स्ट क्वेरी को एक शक्तिशाली, नियम‑आधारित स्कैनर में बदल देती है जो तुरंत सामग्री को निकाल या ब्लॉक कर सकता है। -## रेगेक्स सर्च के लिए GroupDocs.Search क्यों उपयोग करें? -- **गति:** Index‑based searching avoids scanning raw files each time. -- **लचीलापन:** Supports both simple text queries and complex object‑oriented queries. -- **विस्तृत फ़ॉर्मेट समर्थन:** Works with PDFs, Word, Excel, plain text, and more. +## रेगेक्स खोज के लिए GroupDocs.Search क्यों उपयोग करें? +GroupDocs.Search दस्तावेज़ों को एक बार इंडेक्स करता है और फिर प्रत्येक क्वेरी के लिए उस इंडेक्स को पुनः उपयोग करता है, जिससे कच्ची फ़ाइल स्कैनिंग की तुलना में **10× तक तेज़** खोज मिलती है। लाइब्रेरी **30+ फ़ाइल फ़ॉर्मेट** (PDF, DOCX, XLSX, PPTX, TXT, HTML, आदि) का समर्थन करती है और पूरी फ़ाइल को मेमोरी में लोड किए बिना सैकड़ों‑पृष्ठ वाली फ़ाइलों को संभाल सकती है। -## आवश्यकताएँ +## पूर्वापेक्षाएँ - Java Development Kit (JDK) 8 या उससे ऊपर -- डिपेंडेंसी मैनेजमेंट के लिए Maven -- जावा और रेगुलर एक्सप्रेशन्स का बेसिक ज्ञान +- निर्भरता प्रबंधन के लिए Maven +- Java रेगुलर एक्सप्रेशन की बुनियादी परिचितता -### आवश्यक लाइब्रेरी और डिपेंडेंसियाँ -Maven के माध्यम से GroupDocs.Search शामिल करें: +### आवश्यक लाइब्रेरी और निर्भरताएँ +अपने Maven प्रोजेक्ट में GroupDocs.Search जोड़ें: ```xml @@ -59,17 +115,17 @@ Maven के माध्यम से GroupDocs.Search शामिल कर ``` -वैकल्पिक रूप से, नवीनतम JAR को यहाँ से डाउनलोड करें: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). +वैकल्पिक रूप से, नवीनतम JAR [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/) से डाउनलोड करें। -### लाइसेंस प्राप्त करना -एक फ्री ट्रायल या टेम्पररी लाइसेंस यहाँ से प्राप्त करें: [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) और इसे अपने कोड में लागू करें। +### लाइसेंस प्राप्ति +एक फ्री ट्रायल या टेम्पररी लाइसेंस [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) से प्राप्त करें और इसे एप्लिकेशन स्टार्ट‑अप पर लोड करें। ## जावा के लिए GroupDocs.Search सेटअप करना ### इंस्टॉलेशन जानकारी -1. **Maven इंटीग्रेशन:** ऊपर दिखाए गए रिपॉजिटरी और डिपेंडेंसी को अपने `pom.xml` में जोड़ें। -2. **Direct Download:** अपने प्रोजेक्ट की क्लासपाथ पर JAR फ़ाइलें रखें। -3. **License Application:** एप्लिकेशन स्टार्ट‑अप पर लाइसेंस फ़ाइल लोड करें। +1. **Maven इंटीग्रेशन:** ऊपर दिखाए गए रिपॉजिटरी और निर्भरता को अपने `pom.xml` में जोड़ें। +2. **डायरेक्ट डाउनलोड:** JAR फ़ाइलों को अपने प्रोजेक्ट के क्लासपाथ पर रखें। +3. **लाइसेंस एप्लिकेशन:** एप्लिकेशन स्टार्ट‑अप पर लाइसेंस फ़ाइल लोड करें। ```java import com.groupdocs.search.*; @@ -85,8 +141,11 @@ public class SearchSetup { } ``` +## मुख्य घटक +`Index` क्लास वह मुख्य घटक है जो आपके दस्तावेज़ों से निकाले गए सर्चेबल टोकन संग्रहीत करता है। यह मूल फ़ाइलों को दोबारा पढ़े बिना किसी भी शब्द या पैटर्न की तेज़ लुकअप सक्षम करता है। + ## इंडेक्स कैसे बनाएं -इंडेक्स बनाना तेज़ सर्च की ओर पहला कदम है। इंडेक्स आपके दस्तावेज़ों से निकाले गए सर्चेबल टोकन को संग्रहीत करता है। +इंडेक्स बनाना सरल है: `Index` क्लास को उस फ़ोल्डर पाथ के साथ इंस्टैंशिएट करें जहाँ इंडेक्स फ़ाइलें संग्रहीत होंगी। कंस्ट्रक्टर पहली बार उपयोग पर आवश्यक डेटाबेस फ़ाइलें बनाता है और दस्तावेज़ जोड़ने व खोजने के लिए इंजन तैयार करता है। एक बार बन जाने के बाद, सभी क्वेरीज़ के लिए वही इंडेक्स पुनः उपयोग करें। ```java String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; @@ -94,73 +153,79 @@ Index index = new Index(indexFolder); ``` ## दस्तावेज़ कैसे जोड़ें -इंडेक्स फ़ोल्डर बनने के बाद, उसमें उन फ़ाइलों को जोड़ें जिन्हें आप सर्च करना चाहते हैं। +फ़ाइल को सर्चेबल बनाने के लिए, `index.add` को एक `Document` (या `DocumentInfo`) इंस्टेंस के साथ कॉल करें जो फ़ाइल पाथ की ओर इशारा करता हो। लाइब्रेरी सामग्री को पार्स करती है, टोकन निकालती है, और उन्हें इंडेक्स में संग्रहीत करती है। यह ऑपरेशन एकल फ़ाइलों या बैचों के लिए किया जा सकता है, और अपडेट क्रमिक रूप से मर्ज होते हैं। ```java index.add("YOUR_DOCUMENT_DIRECTORY"); system.out.println("Documents added to the index."); ``` -## टेक्स्ट फ़ॉर्म में रेगुलर एक्सप्रेशन सर्च -टेक लिखनेबारगी सर्च के लिए उपयुक्त हैं। +## टेक्स्ट रूप में रेगुलर एक्सप्रेशन खोज कैसे करें +`RegexQuery` एक रेगुलर‑एक्सप्रेशन आधारित खोज क्वेरी को परिभाषित करता है। एक साधारण‑टेक्स्ट पैटर्न के साथ `RegexQuery` लोड करें और इसे `Index` की `search` मेथड को पास करें। इंजन पैटर्न को इंडेक्स्ड टोकन के विरुद्ध मूल्यांकन करता है और मिलते-जुलते दस्तावेज़ रेफ़रेंसेज़ लौटाता है, जिससे एक‑बार की लुकअप तेज़ और सरल बनती है। ```java String query1 = "^((.)\\2{1,})"; ``` +## ऑब्जेक्ट रूप में रेगुलर एक्सप्रेशन खोज कैसे करें +`RegexQuery` को एक ऑब्जेक्ट के रूप में भी बनाया जा सकता है और कई खोजों में पुनः उपयोग किया जा सकता है। क्वेरी को एक बार परिभाषित करें, केस‑इन्सेंसिटिविटी या फज़ी मैचिंग जैसे विकल्प कॉन्फ़िगर करें, और `index.search` को बार‑बार कॉल करें। यह तरीका तब प्रदर्शन को बेहतर बनाता है जब वही पैटर्न कई विभिन्न दस्तावेज़ सेटों पर लागू किया जाता है। + ```java SearchResult result1 = index.search(query1); system.out.println("Number of occurrences found: " + result1.getDocumentCount()); ``` -## ऑब्जेक्ट फ़ॉर्म में रेगुलर एक्सप्रेशन सर्च -ऑब्जेक्ट‑ओरिएंटेड क्वेरीज़ आपको पुन: उपयोग योग्य, टाइप‑सेफ सर्च डिफ़िनिशन देती हैं। - -```java -SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); -``` - -```java -SearchResult result2 = index.search(query2); -system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); -``` - ## कंटेंट फ़िल्टरिंग रेगेक्स उपयोग केस -आप रेगेक्स का उपयोग करके स्वचालित रूप से उन कंटेंट को ब्लॉक या फ्लैग कर सकते हैं जो कुछ पैटर्न से मेल खाते हैं, जैसे: +आप रेगेक्स का उपयोग स्वचालित रूप से उन सामग्री को ब्लॉक या फ़्लैग करने के लिए कर सकते हैं जो कुछ पैटर्न से मेल खाती हैं, जैसे: - स्पैम फ़िल्टरिंग के लिए दोहराए गए अक्षरों का पता लगाना -- डेटा प्राइवेसी चेक के लिए क्रेडिट‑कार्ड जैसी सीक्वेंसेज़ ढूँढ़ना -- डाउनस्ट्रीम प्रोसेसिंग के लिए तिथियों या IDs को एक्सट्रैक्ट करना +- डेटा‑प्राइवेसी जांच के लिए क्रेडिट‑कार्ड‑जैसे क्रम खोजना +- डाउनस्ट्रीम प्रोसेसिंग के लिए तिथियों या IDs को निकालना ## व्यावहारिक अनुप्रयोग -1. **Document Management Systems:** उपयोगकर्ताओं को पैटर्न के आधार पर कॉन्ट्रैक्ट, इनवॉइस या पॉलिसी खोजने में **Content Filtering:** उपयोगकर्ता लागू करें। -3. **Data Analysis:** असंरचित फ़ाइलों से संरचित डेटा (जैसे ऑर्डर नंबर) निकालें। +1. **Document Management Systems:** पैटर्न (जैसे, इनवॉइस नंबर) द्वारा कॉन्ट्रैक्ट, इनवॉइस या पॉलिसी खोजें। +2. **Content Moderation:** फ़ोरम या चैट ऐप्स में उपयोगकर्ता‑जनित टेक्स्ट को मॉडरेट करने के लिए रेगेक्स नियम लागू करें। +3. **Data Extraction:** असंरचित PDFs या Word फ़ाइलों से ऑर्डर नंबर जैसी संरचित डेटा निकालें। -## प्रदर्शन संबंधी विचार -- **Index Updates:** स्रोत फ़ाइलों में बदलाव होनेो मॉनिटर करें और इन्क्रीमेंटल इंडेक्सिंग पर विचार करें। -- **Regex Design:** पैटर्न को संक्षिप्त रखें; बहुत व्यापक रेगेक्स गति को घटा सकते हैं। +## प्रदर्शन विचार +- **Index Updates:** जब भी स्रोत फ़ाइलें बदलें, `index.add` कॉल करें ताकि परिणाम ताज़ा रहें। +- **Memory Management:** 1 million से अधिक दस्तावेज़ों वाले कॉर्पोरा के लिए, हिप उपयोग को नियंत्रित रखने हेतु इन्क्रिमेंटल इंडेक्सिंग सक्षम करें। +- **Regex Design:** पैटर्न को संक्षिप्त रखें; `\d{4}-\d{2}-\d{2}` जैसा पैटर्न `.*` जैसी वाइल्डकार्ड‑भारी अभिव्यक्ति से 3× तेज़ चलता है। ## निष्कर्ष -अब आप जावा में GroupDocs.Search का उपयोग करके **how to regex search** करना जानते हैं, लाइब्रेरी सेटअप करने और इंडेक्स बनाने से लेकर टेक्स्ट‑आधारित और ऑब्जेक्ट‑आधारित दोनों क्वेरी चलाने तक। ये तकनीकें आपको किसी भी जावा एप्लिकेशन में तेज़, पैटर्न‑अवेयर सर्च फीचर बनाने में मदद करेंगी। +अब आप GroupDocs.Search का उपयोग करके जावा में **how to regex search** करना जानते हैं, लाइब्रेरी इंस्टॉल करने और इंडेक्स बनाने से लेकर टेक्स्ट‑आधारित और ऑब्जेक्ट‑ओरिएंटेड क्वेरीज़ चलाने तक। ये तकनीकें आपको किसी भी जावा एप्लिकेशन में तेज़, पैटर्न‑सजग खोज जोड़ने देती हैं, चाहे आप दस्तावेज़ पोर्टल, अनुपालन स्कैनर, या डेटा‑माइनिंग पाइपलाइन बना रहे हों। ## अक्सर पूछे जाने वाले प्रश्न -**Q1: GroupDocs.Search में टेक्स्ट‑आधारित और ऑब्जेक्ट‑आधारित रेगेक्स क्वेरीज़ में क्या अंतर है?** -A1: टेक्स्ट‑आधारित क्वेरीज़ सरल होती हैं लेकिन कम लचीली, जबकि ऑब्जेक्ट‑आधारित क्वेरीज़ बेहतर प्रबंधन और पुन: उपयोग की सुविधा देती हैं। +**Q:** GroupDocs.Search में टेक्स्ट‑आधारित और ऑब्जेक्ट‑आधारित रेगेक्स क्वेरीज़ में क्या अंतर है? +**A:** टेक्स्ट‑आधारित क्वेरीज़ तेज़ वन‑लाइनर होती हैं, जबकि ऑब्जेक्ट‑आधारित क्वेरीज़ पुनः उपयोग योग्य, टाइप‑सेफ परिभाषाएँ प्रदान करती हैं जिन्हें कई खोजों में संग्रहीत और पुनः उपयोग किया जा सकता है। -**Q2: क्या मैं GroupDocs.Search का उपयोग नॉन‑टेक्स्ट दस्तावेज़ों के इंडेक्सिंग के लिए कर सकता हूँ?** -A2: हाँ, यह PDFs, Word फ़ाइलें, Excel शीट्स, और कई अन्य फ़ॉर्मेट्स को सपोर्ट करता है। +**Q:** क्या GroupDocs.Search PDFs या Excel फ़ाइलों जैसे नॉन‑टेक्स्ट दस्तावेज़ों को इंडेक्स कर सकता है? +**A:** हाँ, लाइब्रेरी PDFs, DOCX, XLSX, PPTX, और 30 से अधिक अन्य फ़ॉर्मेट्स से सर्चेबल टेक्स्ट निकालती है। -**Q3: मौजूदा सर्च इंडेक्स को कैसे अपडेट करूँ?** -A3: इंडेक्स को रिफ्रेश करने के लिए `index.add` मेथड को नए या संशोधित दस्तावेज़ों के साथ उपयोग करें। +**Q:** नई फ़ाइलें जोड़ने के बाद मौजूदा सर्च इंडेक्स को कैसे अपडेट करूँ? +**A:** नई या संशोधित दस्तावेज़ों के साथ `index.add` कॉल करें; लाइब्रेरी पूरे इंडेक्स को पुनः बनाये बिना परिवर्तन मर्ज कर देगी। -**Q4: GroupDocs.Search उपयोग करते समय कुछ सामान्य समस्याएँ क्या हैं?** -A4: सामान्य समस्याओं में खराब रेगेक्स पैटर्न शामिल हैं जो कोई परिणाम नहीं देते और बहुत बड़े इंडेक्स पर प्रदर्शन में गिरावट आती है। अपने पैटर्न की जाँच करें और इंडेक्स को ऑप्टिमाइज़ रखें। +**Q:** GroupDocs.Search के साथ रेगेक्स उपयोग करते समय सामान्य pitfalls क्या हैं? +**A:** बहुत व्यापक पैटर्न (जैसे, `.*`) प्रदर्शन गिरावट का कारण बन सकते हैं, और गलत अभिव्यक्तियाँ कोई परिणाम नहीं दे सकतीं। हमेशा पहले एक सैंपल सेट पर पैटर्न टेस्ट करें। -**Q5: GroupDocs.Search पर अधिक उन्नत ट्यूटोरियल्स कहाँ मिल सकते हैं?** -A5: विस्तृत गाइड और उदाहरणों के लिए [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) देखें। +**Q:** अधिक उन्नत GroupDocs.Search ट्यूटोरियल्स कहाँ मिल सकते हैं? +**A:** गहरी गाइड्स, API रेफ़रेंसेज़, और सैंपल प्रोजेक्ट्स के लिए [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) देखें। ---- +**अंतिम अपडेट:** 2026-07-31 +**परीक्षित संस्करण:** GroupDocs.Search 25.4 +**लेखक:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## संबंधित ट्यूटोरियल -**Last Updated:** 2026-02-01 -**Tested With:** GroupDocs.Search 25.4 -**Author:** GroupDocs \ No newline at end of file +- [GroupDocs.Search Java में महारत: कुशल दस्तावेज़ खोज और इंडेक्स प्रबंधन](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [GroupDocs.Search Java में महारत: फज़ी खोज और दस्तावेज़ इंडेक्सिंग गाइड](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [GroupDocs.Search गाइड के साथ जावा में टेक्स्ट कैसे इंडेक्स करें](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/hindi/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/hindi/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..a7b5f50e7 --- /dev/null +++ b/content/hindi/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,277 @@ +--- +date: '2026-07-31' +description: GroupDocs.Search के साथ इंडेक्स में दस्तावेज़ जोड़कर case insensitive + search java को लागू करना सीखें, इंडेक्सिंग के दौरान टेक्स्ट को सामान्य करने के लिए + character replacement का उपयोग करते हुए। +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: Case insensitive search java आपको दस्तावेज़ों को इंडेक्स में जोड़ने + और उन्हें क्वेरी करने की सुविधा देता है बिना अक्षर केस की चिंता किए। यह गाइड दिखाता + है कि GroupDocs.Search कैसे इंडेक्सिंग के दौरान टेक्स्ट को सामान्य करता है ताकि + तेज़ और विश्वसनीय परिणाम मिलें। +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Case Insensitive Search Java – GroupDocs के साथ दस्तावेज़ इंडेक्स करें +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: Java में Case‑Insensitive Search के लिए इंडेक्स में दस्तावेज़ जोड़ें +type: docs +url: /hi/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# केस‑इन्सेंसिटिव खोज के लिए जावा में इंडेक्स में दस्तावेज़ जोड़ें + +जब आपको **case insensitive search java** की आवश्यकता हो जो उपयोगकर्ताओं द्वारा टाइप किए जाने के तरीके की परवाह किए बिना विश्वसनीय रूप से जानकारी खोजे, तो मुख्य बात यह है कि टेक्स्ट को सामान्यीकृत करते हुए दस्तावेज़ों को इंडेक्स में जोड़ें। इस ट्यूटोरियल में हम GroupDocs.Search for Java को कॉन्फ़िगर करना दिखाते हैं ताकि आप द्वारा इंडेक्स किए गए प्रत्येक दस्तावेज़ को इंडेक्सिंग के दौरान स्वचालित रूप से लोअर‑केस (या अन्य रूपांतरण) किया जाए, जिससे अतिरिक्त क्वेरी‑टाइम लॉजिक के बिना केस‑इन्सेंसिटिव परिणाम सुनिश्चित हों। + +## त्वरित उत्तर +- **“add documents to index” का क्या अर्थ है?** इसका मतलब है स्रोत फ़ाइलों को एक खोज योग्य डेटा संरचना में लोड करना ताकि उन्हें बाद में क्वेरी किया जा सके। +- **कैरेक्टर रिप्लेसमेंट क्यों उपयोग करें?** यह प्रत्येक कैरेक्टर को सामान्यीकृत करता है—आमतौर पर लोअर‑केस में—ताकि खोजें स्वचालित रूप से केस अंतर को नज़रअंदाज़ कर सकें। +- **क्या मुझे लाइसेंस चाहिए?** विकास के लिए फ्री ट्रायल काम करता है; उत्पादन परिनियोजन के लिए पूर्ण लाइसेंस आवश्यक है। +- **कौन सा जावा संस्करण आवश्यक है?** जावा 8 या नया; लाइब्रेरी इष्टतम प्रदर्शन के लिए जावा 11+ को लक्षित करती है। +- **क्या आवश्यकता पड़ने पर केस‑सेंसिटिव खोज पर स्विच कर सकता हूँ?** हाँ—सर्च विकल्प आपको प्रत्येक क्वेरी के लिए केस‑सेंसिटिविटी टॉगल करने देते हैं। + +## GroupDocs.Search में “add documents to index” क्या है? +अपने स्रोत फ़ाइलों (PDF, DOCX, TXT, आदि) को एक खोज योग्य इंडेक्स में लोड करें ताकि इंजन उन्हें तेज़ी से पुनः प्राप्त कर सके। इंडेक्स में दस्तावेज़ जोड़ना प्रत्येक फ़ाइल को पार्स करता है, साधा टेक्स्ट निकालता है, और उसे एक अनुकूलित डेटा संरचना में संग्रहीत करता है जो तेज़ लुक‑अप सक्षम करती है। + +## इंडेक्सिंग के दौरान कैरेक्टर रिप्लेसमेंट को सक्षम क्यों करें? +कैरेक्टर रिप्लेसमेंट प्रत्येक कैरेक्टर को एक पूर्वनिर्धारित समकक्ष में बदल देता है—सबसे आम तौर पर लोअर‑केस—जब इंडेक्स बनाया जाता है। यह सुनिश्चित करता है कि कैपिटलाइज़ेशन, डायाक्रिटिक्स, या लोकेल‑विशिष्ट प्रतीकों में विविधताएँ खोज परिणामों को प्रभावित न करें। इंडेक्सिंग समय पर टेक्स्ट को सामान्यीकृत करके, इंजन एक सुसंगत टोकन सेट के विरुद्ध क्वेरीज़ को मिलान कर सकता है, जिससे अतिरिक्त प्रोसेसिंग के बिना तेज़, विश्वसनीय केस‑इन्सेंसिटिव व्यवहार मिलता है। + +## पूर्वापेक्षाएँ +- **GroupDocs.Search for Java** संस्करण 25.4 या नया (लाइब्रेरी 30+ फ़ाइल फ़ॉर्मेट का समर्थन करती है और मेमोरी में पूरी फ़ाइल लोड किए बिना कई‑सौ‑पृष्ठ दस्तावेज़ों को इंडेक्स कर सकती है)। +- **Java Development Kit (JDK)** 8 या बाद का स्थापित होना चाहिए। +- **Maven** की बुनियादी समझ (या JARs को मैन्युअल रूप से जोड़ने की क्षमता)। + +## GroupDocs.Search for Java सेटअप + +### Maven सेटअप +अपने `pom.xml` में GroupDocs रिपॉजिटरी और डिपेंडेंसी जोड़ें: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### सीधे डाउनलोड +यदि आप Maven का उपयोग नहीं करना चाहते, तो आधिकारिक साइट से नवीनतम JAR प्राप्त करें: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/)। + +### लाइसेंस प्राप्ति +- **Free Trial** – प्रयोग शुरू करने के लिए ट्रायल लाइसेंस डाउनलोड करें। +- **Temporary License** – GroupDocs पोर्टल से विस्तारित परीक्षण लाइसेंस का अनुरोध करें। +- **Full License** – जब आप लाइव जाने के लिए तैयार हों तो प्रोडक्शन लाइसेंस खरीदें। + +### बुनियादी इनिशियलाइज़ेशन (इंडेक्स बनाएं) +निम्न स्निपेट एक इंडेक्स फ़ोल्डर बनाता है और कैरेक्टर रिप्लेसमेंट को सक्षम करता है: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## कार्यान्वयन गाइड + +### इंडेक्स सेटिंग्स में कैरेक्टर रिप्लेसमेंट सक्षम करें +इस फीचर को सक्रिय करने से इंजन को इंडेक्सिंग के दौरान कैरेक्टर बदलने का निर्देश मिलता है, जो केस‑इन्सेंसिटिव व्यवहार का मूल चरण है। + +#### चरण १: `IndexSettings` कॉन्फ़िगर करें +`IndexSettings` वह कॉन्फ़िगरेशन ऑब्जेक्ट है जो नियंत्रित करता है कि इंडेक्स टेक्स्ट को कैसे संग्रहीत और प्रोसेस करता है। `useCharacterReplacements` को **true** सेट करके आप स्वचालित लोअर‑केसिंग (या कोई भी कस्टम मैपिंग) चालू कर देते हैं। + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### कैरेक्टर रिप्लेसमेंट कॉन्फ़िगर करें +प्रत्येक कैरेक्टर को उसके लोअर‑केस समकक्ष (या आवश्यक कोई भी कस्टम मैपिंग) में मैप करें। + +#### चरण २: रिप्लेसमेंट पेयर्स परिभाषित करें और जोड़ें +रिप्लेसमेंट डिक्शनरी में `'A' → 'a'`, `'É' → 'e'` आदि जैसे पेयर्स होते हैं। इंडेक्सिंग से पहले इन पेयर्स को जोड़ने से सुनिश्चित होता है कि हर टोकन सामान्यीकृत हो। + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### दस्तावेज़ों का इंडेक्सिंग +अब जब इंडेक्स तैयार है, आप किसी भी फ़ोल्डर से **add documents to index** कर सकते हैं। + +#### चरण ३: इंडेक्सिंग के लिए दस्तावेज़ जोड़ें +GroupDocs.Search लक्ष्य डायरेक्टरी को स्कैन करता है, प्रत्येक समर्थित फ़ाइल प्रकार से टेक्स्ट निकालता है, रिप्लेसमेंट मैप लागू करता है, और टोकन को इंडेक्स स्टोरेज में लिखता है। + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### केस‑सेंसिटिव खोज निष्पादित करें (वैकल्पिक) + +#### चरण ४: केस‑सेंसिटिव खोजें चलाएँ +`SearchOptions` क्वेरी व्यवहार को कॉन्फ़िगर करता है, जैसे केस‑सेंसिटिविटी टॉगल करना, जिससे खोज कैसे की जाती है इस पर सूक्ष्म नियंत्रण मिलता है। +`SearchOptions.setUseCaseSensitiveSearch(true)` इंजन को विशिष्ट क्वेरी के दौरान अपर‑और लोअर‑केस कैरेक्टर को अलग-अलग मानने के लिए मजबूर करता है, जिससे डिफ़ॉल्ट केस‑इन्सेंसिटिव व्यवहार ओवरराइड हो जाता है। + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## व्यावहारिक अनुप्रयोग +1. **मार्केटिंग कैंपेन** – उत्पाद नामों को सामान्यीकृत करें ताकि सेल्स टीम केस की परवाह किए बिना एसेट्स खोज सके। +2. **कस्टमर सपोर्ट** – हेल्प‑डेस्क सर्च बॉक्स को इस प्रकार सक्षम करें कि उपयोगकर्ता “login” या “Login” टाइप करे, फिर भी सही लेख लौटे। +3. **ई‑कॉमर्स कैटलॉग** – शॉपर्स को उत्पाद शीर्षक चाहे जैसे भी टाइप करें, आइटम खोजने दें, जिससे रूपांतरण दरें बढ़ें। + +## प्रदर्शन विचार +- **स्रोत फ़ाइलों का आयोजन** – एक साफ़ फ़ोल्डर संरचना **add documents to index** चरण के दौरान स्कैनिंग समय को कम करती है। +- **मेमोरी मॉनिटर करें** – बड़े कॉर्पोरा को इंडेक्स करने से काफी RAM उपयोग हो सकता है; फ़ाइलों को 500 – 1 000 आइटम के बैच में प्रोसेस करने से हीप उपयोग नियंत्रण में रहता है। +- **असिंक्रोनस इंडेक्सिंग** – जब समर्थित हो, बैकग्राउंड थ्रेड पर इंडेक्सिंग चलाएँ ताकि UI रिस्पॉन्सिव रहे और उपयोगकर्ता ऑपरेशन्स ब्लॉक न हों। + +## सामान्य समस्याएँ और ट्रबलशूटिंग +| लक्षण | संभावित कारण | समाधान | +|---------|--------------|-----| +| ज्ञात शब्द के लिए कोई परिणाम नहीं मिला | कैरेक्टर रिप्लेसमेंट सक्षम नहीं है | `settings.setUseCharacterReplacements(true)` को सत्यापित करें और सुनिश्चित करें कि रिप्लेसमेंट मैप में आवश्यक कैरेक्टर मौजूद हैं। | +| इंडेक्सिंग के दौरान Out‑of‑memory त्रुटि | एक साथ बहुत बड़ी फ़ाइलें इंडेक्स की जा रही हैं | छोटे बैच में इंडेक्स करें या JVM हीप बढ़ाएँ (`-Xmx4g`)। | +| खोज अप्रत्याशित रूप से केस‑सेंसिटिव परिणाम देती है | `SearchOptions.setUseCaseSensitiveSearch(true)` सेट किया गया था | डिफ़ॉल्ट केस‑इन्सेंसिटिव व्यवहार के लिए इसे हटाएँ या `false` सेट करें। | +| इंडेक्स लोड समय अपेक्षा से अधिक है | फ़ोल्डर लेआउट अक्षम है या SSD उपयोग नहीं हो रहा | फ़ाइलें पुनः व्यवस्थित करें, अनावश्यक दस्तावेज़ हटाएँ, और इंडेक्स को तेज़ SSD पर रखें। | +| विशेष कैरेक्टर अनदेखे रह जाते हैं | रिप्लेसमेंट मैप में यूनिकोड एंट्री नहीं हैं | “é”, “ß”, “ø” जैसे कैरेक्टर के लिए मैपिंग जोड़ें। | + +## अक्सर पूछे जाने वाले प्रश्न + +**Q: इंडेक्सिंग के दौरान विशेष कैरेक्टर (जैसे “é”, “ß”) को कैसे संभालूँ?** +A: उन कैरेक्टर को अपने रिप्लेसमेंट मैप में शामिल करें, उन्हें उनके ASCII समकक्ष में मैप करें या खोज आवश्यकताओं के आधार पर अपरिवर्तित रखें। + +**Q: क्या मैं कैरेक्टर रिप्लेसमेंट को केवल एक विशिष्ट भाषा तक सीमित कर सकता हूँ?** +A: हाँ। कस्टम रिप्लेसमेंट एरे बनाएं जिसमें केवल लक्षित भाषा के कैरेक्टर हों, फिर उसे डिक्शनरी में जोड़ें। + +**Q: यदि इंडेक्स लोड होने में बहुत समय लेता है तो क्या करें?** +A: फ़ोल्डर संरचना को अनुकूलित करें, अनावश्यक फ़ाइलें हटाएँ, और इंडेक्स को हाई‑स्पीड SSD पर रखें। इंक्रीमेंटल इंडेक्सिंग भी लोड ओवरहेड को कम करती है। + +**Q: क्या इंडेक्सिंग के बाद कैरेक्टर रिप्लेसमेंट को वापस किया जा सकता है?** +A: नहीं। रिप्लेसमेंट इंडेक्स्ड डेटा में बेक्ड होते हैं; उन्हें बदलने के लिए नई सेटिंग्स के साथ इंडेक्स को पुनः बनाना पड़ेगा। + +**Q: अधिक विस्तृत API दस्तावेज़ कहाँ मिलेंगे?** +A: आधिकारिक दस्तावेज़ और API रेफ़रेंस में विस्तृत जानकारी उपलब्ध है (नीचे संसाधनों को देखें)। + +## संसाधन +- [दस्तावेज़ीकरण](https://docs.groupdocs.com/search/java/) +- [API रेफ़रेंस](https://reference.groupdocs.com/search/java) +- [GroupDocs.Search डाउनलोड करें](https://releases.groupdocs.com/search/java/) +- [GitHub रिपॉजिटरी](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [फ़्री सपोर्ट फ़ोरम](https://forum.groupdocs.com/c/search/10) +- [टेम्पररी लाइसेंस जानकारी](https://purchase.groupdocs.com/temporary-license/) + +--- + +**अंतिम अपडेट:** 2026-07-31 +**परीक्षण किया गया:** GroupDocs.Search 25.4 for Java +**लेखक:** GroupDocs + +## संबंधित ट्यूटोरियल + +- [GroupDocs.Search Java में कैरेक्टर रिप्लेसमेंट: टेक्स्ट सर्च और इंडेक्सिंग को बढ़ाने के लिए व्यापक गाइड](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [इंडेक्स में दस्तावेज़ जोड़ें: GroupDocs के साथ केस‑सेंसिटिव जावा सर्च](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [GroupDocs.Search for Java के साथ इंडेक्स में दस्तावेज़ कैसे जोड़ें](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/hindi/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/hindi/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..07cfc5d66 --- /dev/null +++ b/content/hindi/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,303 @@ +--- +date: '2026-07-31' +description: GroupDocs का उपयोग करके मजबूत .NET लॉगिंग कैसे बनाएं, यह जानें, जिसमें + एक custom console logger को लागू करना और प्रभावी मॉनिटरिंग के लिए built‑in FileLogger + का उपयोग करना शामिल है। +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: GroupDocs का उपयोग करके मजबूत .NET लॉगिंग कैसे बनाएं, यह जानें, जिसमें + एक custom console logger को लागू करना और प्रभावी मॉनिटरिंग के लिए built‑in FileLogger + का उपयोग करना शामिल है। +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: GroupDocs Console Logger के साथ मजबूत .NET लॉगिंग बनाएँ +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: GroupDocs Console Logger के साथ मजबूत .NET लॉगिंग बनाएँ +type: docs +url: /hi/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# GroupDocs कंसोल लॉगर के साथ मजबूत .NET लॉगिंग बनाएं + +## परिचय + +क्या आप अपनी .NET एप्लिकेशनों में त्रुटियों को ट्रैक करने और ऑपरेशनों को ट्रेस करने में कठिनाई महसूस कर रहे हैं? **Create robust .NET logging** प्रदर्शन की निगरानी, समस्याओं का डिबगिंग, और सुचारु संचालन बनाए रखने के लिए आवश्यक है। यह ट्यूटोरियल आपको GroupDocs.Search का उपयोग करके एक कस्टम कंसोल लॉगर बनाने के चरण दिखाता है तथा .NET के लिए GroupDocs.Redaction को एकीकृत करने का तरीका भी बताता है। अंत तक, आपके पास एक स्पष्ट, रखरखाव योग्य लॉगिंग समाधान होगा जो आपके मौजूदा कोडबेस में सहजता से फिट हो जाएगा। + +## त्वरित उत्तर +- **कस्टम लॉगर क्या करता है?** विकास के दौरान त्वरित प्रतिक्रिया के लिए लॉग एंट्रीज़ को सीधे कंसोल में लिखता है। +- **कौन सा GroupDocs घटक फ़ाइल लॉगिंग प्रदान करता है?** बिल्ट‑इन `FileLogger` क्लास स्थायी लॉग फ़ाइलों को संभालती है। +- **क्या मुझे लाइसेंस चाहिए?** परीक्षण के लिए एक अस्थायी लाइसेंस काम करता है; उत्पादन के लिए पूर्ण लाइसेंस आवश्यक है। +- **कौन से .NET संस्करण समर्थित हैं?** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **क्या समाधान थ्रेड‑सेफ़ है?** हाँ—`ConsoleLogger` और `FileLogger` दोनों को समवर्ती उपयोग के लिए डिज़ाइन किया गया है। + +## “मजबूत .NET लॉगिंग बनाना” क्या है? +**Create robust .NET logging** का अर्थ है एक विश्वसनीय, उच्च‑प्रदर्शन लॉगिंग पाइपलाइन स्थापित करना जो एप्लिकेशन की सभी परतों में त्रुटियों, चेतावनियों और सूचना संदेशों को कैप्चर करती है। GroupDocs के साथ, आप इसे कंसोल और फ़ाइल दोनों टार्गेट्स का उपयोग करके प्राप्त कर सकते हैं जबकि कॉन्फ़िगरेशन को सरल रख सकते हैं। + +## .NET लॉगिंग के लिए GroupDocs क्यों उपयोग करें? +GroupDocs **30+ .NET प्लेटफ़ॉर्म** को सपोर्ट करता है और **2 GB** तक के दस्तावेज़ों को बिना किसी उल्लेखनीय प्रदर्शन हानि के प्रोसेस कर सकता है। इसके लॉगिंग API हल्के, थ्रेड‑सेफ़ हैं, और मौजूदा एक्सेप्शन‑हैंडलिंग पैटर्न के साथ सहजता से एकीकृत होते हैं, जिससे आपको एक सिद्ध, एंटरप्राइज़‑ग्रेड समाधान मिलता है। + +## आवश्यकताएँ + +- **आवश्यक लाइब्रेरीज़ और संस्करण:** .NET के लिए GroupDocs.Search और .NET के लिए GroupDocs.Redaction (नवीनतम संगत रिलीज़)। +- **पर्यावरण सेटअप:** Visual Studio 2022 या कोई भी .NET‑संगत IDE। +- **ज्ञान पूर्वापेक्षाएँ:** C# सिंटैक्स और बुनियादी लॉगिंग अवधारणाओं की परिचितता। + +## .NET के लिए GroupDocs.Redaction सेटअप करना + +सबसे पहले, अपने प्रोजेक्ट में GroupDocs.Redaction जोड़ें। वह विधि चुनें जो आपके कार्यप्रवाह के लिए सबसे उपयुक्त हो। + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +“GroupDocs.Redaction” खोजें और नवीनतम संस्करण स्थापित करें। + +### लाइसेंस प्राप्ति + +शुरू करने के लिए, आप एक अस्थायी लाइसेंस प्राप्त कर सकते हैं या पूर्ण लाइसेंस खरीद सकते हैं। इससे आप सभी सुविधाओं को बिना किसी सीमा के अन्वेषण कर सकते हैं। अपने लाइसेंस को प्राप्त करने के बारे में अधिक विवरण के लिए [GroupDocs' official site](https://purchase.groupdocs.com/temporary-license/) पर जाएँ। + +### बुनियादी प्रारंभिककरण और सेटअप + +`Redactor` क्लास समर्थित दस्तावेज़ों में सामग्री को संशोधित और रिडैक्ट करने के लिए API प्रदान करती है। +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## कार्यान्वयन गाइड + +### GroupDocs के साथ कस्टम कंसोल लॉगर कैसे लागू करें? + +`ConsoleLogger` का एक इंस्टेंस बनाकर और उसे `SearchOptions` या किसी भी GroupDocs घटक को पास करके अपना कस्टम लॉगर लोड करें जो `ILogger` स्वीकार करता है। लॉगर प्रत्येक संदेश को `Console.WriteLine` पर लिखता है, जिससे आपको लाइब्रेरी के कार्य को वास्तविक‑समय में देख सकें, और विकास के दौरान समस्याओं को जल्दी पहचानने में मदद मिलती है। + +`ConsoleLogger` क्लास `ILogger` को लागू करती है ताकि लॉग संदेश सीधे कंसोल में लिखे जा सकें। +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**चरण 1: अपना कस्टम लॉगर परिभाषित करें** +`ConsoleLogger` नाम की नई क्लास बनाएं: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**चरण 2: GroupDocs.Search के साथ एकीकृत करें** + +`SearchOptions` खोज व्यवहार को कॉन्फ़िगर करता है और लॉगिंग के लिए एक `ILogger` स्वीकार करता है। +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### FileLogger क्या है और कब उपयोग करें? + +`FileLogger` क्लास `ILogger` को लागू करती है और लॉग एंट्रीज़ को डिस्क पर फ़ाइल में स्थायी रूप से संग्रहीत करती है, जिससे यह उन उत्पादन वातावरणों के लिए आदर्श बनती है जहाँ ऑडिट ट्रेल की आवश्यकता होती है। GroupDocs द्वारा प्रदान की गई `FileLogger` क्लास डिस्क पर निर्दिष्ट फ़ाइल में लॉग एंट्रीज़ लिखती है, जिससे यह उन उत्पादन वातावरणों के लिए उपयुक्त है जहाँ आपको स्थायी ऑडिट ट्रेल चाहिए। आप लॉग रोटेशन, फ़ाइल आकार सीमाएँ, और लॉग स्तर को अपनी संचालन आवश्यकताओं के अनुसार कॉन्फ़िगर कर सकते हैं। + +`FileLogger` क्लास `ILogger` को लागू करती है और लॉग एंट्रीज़ को डिस्क पर फ़ाइल में संग्रहीत करती है। +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### .NET लॉगिंग के लिए GroupDocs क्यों चुनें? + +GroupDocs एक **मात्रात्मक** लाभ प्रदान करता है: यह **50 से अधिक आउटपुट फ़ॉर्मेट** का समर्थन करता है और **सैकड़ों‑पृष्ठ दस्तावेज़** को पूरी फ़ाइल को मेमोरी में लोड किए बिना संभाल सकता है। इसका लॉगिंग इन्फ्रास्ट्रक्चर प्रत्येक लॉग एंट्री पर **2 ms** से कम ओवरहेड जोड़ता है, जिससे भारी लोड के तहत भी प्रदर्शन इष्टतम बना रहता है। + +## व्यावहारिक अनुप्रयोग + +यहाँ कुछ व्यावहारिक परिदृश्य हैं जहाँ ये लॉगिंग तकनीकें चमकती हैं: + +1. **एप्लिकेशन मॉनिटरिंग:** विकास के दौरान लाइव डायग्नोस्टिक्स देखने के लिए `ConsoleLogger` का उपयोग करें। +2. **ऑडिट ट्रेल्स:** नियामक रिपोर्टिंग के लिए अनुपालन‑ग्रेड लॉग बनाए रखने हेतु `FileLogger` को तैनात करें। +3. **डिबगिंग:** जटिल सर्च पाइपलाइन में समस्याओं को pinpoint करने के लिए विस्तृत ट्रेस संदेशों का उपयोग करें। +4. **प्रदर्शन विश्लेषण:** बॉटलनेक्स की पहचान करने और संसाधन उपयोग को अनुकूलित करने के लिए लॉग टाइमस्टैम्प की जाँच करें। + +## प्रदर्शन विचार + +लॉगिंग को तेज़ और कुशल रखने के लिए: + +- **लॉग वर्बोसिटी सीमित करें:** उत्पादन में अत्यधिक I/O से बचने के लिए लॉगर का स्तर `Info` या `Warning` पर सेट करें। +- **संसाधन उपयोग कुशल बनाएं:** `FileLogger` को अधिकतम फ़ाइल आकार 10 MB के साथ कॉन्फ़िगर करें और स्वचालित रोलओवर सक्षम करें। +- **मेमोरी प्रबंधन:** लॉगर इंस्टेंस को `using` ब्लॉक्स या स्पष्ट `Dispose()` कॉल्स के साथ डिस्पोज़ करें ताकि संसाधन तुरंत मुक्त हो सकें। + +## अक्सर पूछे जाने वाले प्रश्न + +**Q: क्या मैं मल्टी‑थ्रेडेड एप्लिकेशन में कस्टम कंसोल लॉगर का उपयोग कर सकता हूँ?** +A: हाँ—`ConsoleLogger` और `FileLogger` दोनों थ्रेड‑सेफ़ हैं, इसलिए आप रेस कंडीशन के बिना समानांतर टास्क से लॉग कर सकते हैं। + +**Q: क्या GroupDocs.Search और GroupDocs.Redaction के लिए अलग लाइसेंस चाहिए?** +A: एक ही GroupDocs लाइसेंस सभी मॉड्यूल को कवर करता है, जिसमें Search और Redaction शामिल हैं, जिससे खरीद प्रक्रिया सरल हो जाती है। + +**Q: FileLogger के लिए लॉग फ़ाइल स्थान कैसे बदलूँ?** +A: `FileLogger` इंस्टेंस बनाते समय `LogFilePath` प्रॉपर्टी सेट करें, उदाहरण के लिए `new FileLogger("C:\\Logs\\app.log")`। + +**Q: GroupDocs कौन से लॉग स्तर समर्थन करता है?** +A: लाइब्रेरी `Debug`, `Info`, `Warning`, `Error`, और `Critical` स्तर प्रदान करती है, जिससे आउटपुट पर सूक्ष्म नियंत्रण संभव हो जाता है। + +**Q: क्या एक साथ कंसोल और फ़ाइल लॉगिंग को मिलाना संभव है?** +A: बिल्कुल—एक कॉम्पोज़िट लॉगर बनाएं जो संदेशों को दोनों `ConsoleLogger` और `FileLogger` को फॉरवर्ड करे, जिससे दोहरी दृश्यता मिले। + +## संसाधन + +- [GroupDocs Redaction दस्तावेज़ीकरण](https://docs.groupdocs.com/search/net/) +- [API रेफ़रेंस](https://reference.groupdocs.com/redaction/net) +- [GroupDocs लाइब्रेरीज़ डाउनलोड करें](https://releases.groupdocs.com/search/net/) +- [नि:शुल्क सपोर्ट फ़ोरम](https://forum.groupdocs.com/c/search/10) +- [अस्थायी लाइसेंस प्राप्ति](https://purchase.groupdocs.com/temporary-license/) + +## निष्कर्ष + +इस गाइड में, हमने **create robust .NET logging** को कस्टम कंसोल लॉगर बनाकर और GroupDocs के बिल्ट‑इन `FileLogger` का उपयोग करके दिखाया है। ये टूल्स विकास के दौरान वास्तविक‑समय अंतर्दृष्टि और उत्पादन के लिए विश्वसनीय, स्थायी लॉग प्रदान करते हैं। विभिन्न लॉग‑लेवल कॉन्फ़िगरेशन का अन्वेषण करें, कॉम्पोज़िट लॉगर के साथ प्रयोग करें, और पूर्ण‑स्टैक अवलोकन के लिए समाधान को बड़े सर्विसेज़ में एकीकृत करें। + +**अगले कदम** + +- विवरण और प्रदर्शन के बीच संतुलन खोजने के लिए विभिन्न लॉग‑लेवल सेटिंग्स का परीक्षण करें। +- `FileLogger` में संरचित लॉगिंग (JSON आउटपुट) जोड़ें ताकि लॉग‑विश्लेषण प्लेटफ़ॉर्म में आसान इन्जेस्ट हो सके। +- GroupDocs के अन्य मॉड्यूल, जैसे Search और Annotation, का अन्वेषण करें ताकि अपने दस्तावेज़‑प्रोसेसिंग पाइपलाइन को विस्तारित कर सकें। + +**अंतिम अपडेट:** 2026-07-31 +**परीक्षित संस्करण:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**लेखक:** GroupDocs + +## संबंधित ट्यूटोरियल + +- [GroupDocs.Search .NET के लिए एक्सेप्शन हैंडलिंग और लॉगिंग ट्यूटोरियल्स](/search/net/exception-handling-logging/) +- [Document Management के लिए .NET में GroupDocs.Search और Redaction को लागू करना](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [.NET में GroupDocs Search और Redaction में महारत: उन्नत दस्तावेज़ प्रबंधन](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/hongkong/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/hongkong/java/searching/groupdocs-search-java-regex-tutorial/_index.md index f9ecc82b9..0cc3f2556 100644 --- a/content/hongkong/java/searching/groupdocs-search-java-regex-tutorial/_index.md +++ b/content/hongkong/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -1,40 +1,97 @@ --- -date: '2026-02-01' -description: 學習如何在 Java 中使用正則表達式搜尋,以及如何使用 GroupDocs.Search 建立索引。本教程涵蓋設定、索引建立與正則表達式搜尋的 - Java 範例教學。 +date: '2026-07-31' +description: 了解如何在 Java 中使用 GroupDocs.Search 進行正則表達式搜尋。本分步教學展示了環境設定、索引建立以及正則查詢範例,助您快速進行文字文件分析。 keywords: -- regex searches -- GroupDocs.Search for Java -- Java text document analysis -title: 在 Java 中如何使用正則表達式搜尋:精通 GroupDocs.Search 於文字文件分析 +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: 使用 GroupDocs.Search 在 Java 中進行正則表達式搜尋,可快速在 PDF、Word 及文字檔案中進行模式匹配。遵循本指南完成設定、建立索引,並執行強大的正則查詢。 +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: 使用 GroupDocs.Search 的 Java 正則表達式搜尋指南 +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: 使用 GroupDocs.Search 的 Java 正則表達式搜尋指南 type: docs url: /zh-hant/java/searching/groupdocs-search-java-regex-tutorial/ weight: 1 --- -# 如何在 Java 中使用正則表達式搜尋:精通 GroupDocs.Search 進行文字文件分析 +# 如何在 Java 中使用 GroupDocs.Search 進行正則表達式搜尋 -在大量文字文件中高效搜尋可能相當具挑戰性。使用 GroupDocs.Search,**如何在 Java 中使用正則表達式搜尋** 變得簡單,該函式。在本指南中,您將學習如何設定環境、建立索引、加入文件,以及執行文字型與物件型的正則表達式查詢。完成後,您將擁有一套完整的 **Java 正則表達式搜尋教學**,可應用於實務專案。 +搜尋成千上萬的文字文件可能像在大海撈針般困難。將 Java 強大的正則表達式引擎與 GroupDocs.Search 結合,**正則表達式搜尋** 變得輕而易舉。接下來的幾分鐘內,您將看到如何安裝函式庫、建立索引、加入檔案,以及執行簡單的文字型與物件導向的正則表達式查詢。完成後,您即可在任何 Java 應用程式中嵌入強大的模式匹配搜尋功能。 ## 快速解答 -- **主要函式庫是什麼?** GroupDocs.Search for Java -- **如何開始?** Add the Maven dependency and initialize an `Index` object -- **我可以使用正則表達式過濾內容嗎?** Yes – use regex queries for content filtering regex scenarios -- **需要授權嗎?** A free trial or temporary license is required for production use -- **支援哪個 JDK 版本讓您能在一次操作中於多個文件中定位文字模式,例如日期、電子郵件地址或重複字元。GroupDocs.Search 會將這些模式編譯為高效的查詢,即使在大型資料集上也能快速執行。 +- **主要的函式庫是什麼?** GroupDocs.Search for Java +- **如何開始?** 加入 Maven 相依項目並實例化 `Index` 物件 +- **可以使用正則表達式過濾內容嗎?** 可以 – 使用正則表達式查詢進行內容過濾 +- **需要授權嗎?** 需要免費試用或臨時授權才能在正式環境使用 +- **支援哪個 JDK 版本?** Java 8 或更高版本 -## 為何在正則表達式搜尋中使用 GroupDocs.Search? -- **速度:** 基於索引的搜尋避免每次掃描原始檔案。 -- **彈性:** 同時支援簡單文字查詢與複雜的物件導向查詢。 -- **廣泛格式支援:** 可處理 PDF、Word、Excel、純文字等多種格式。 +## 正則表達式搜尋是什麼? +正則表達式搜尋讓您能在一次操作中於多個檔案中定位日期、電子郵件地址或重複字元等模式。它將純文字查詢轉換為功能強大的規則式掃描器,能即時抽取或阻擋內容。 + +## 為什麼在正則表達式搜尋中使用 GroupDocs.Search? +GroupDocs.Search 只需對文件建立一次索引,之後所有查詢皆使用該索引,搜尋速度 **快達 10 倍**,相較於直接檔案掃描更有效率。函式庫支援 **30+ 檔案格式**(PDF、DOCX、XLSX、PPTX、TXT、HTML 等),且可處理上百頁的檔案而不需將整個檔案載入記憶體。 ## 前置條件 - Java Development Kit (JDK) 8 或更高版本 -- Maven 用於相依管理 -- 具備 Java 與正則表達式的基本知識 +- Maven(用於相依管理) +- 基本了解 Java 正則表達式 -### 必要的函式庫與相依性 -透過 Maven 引入 GroupDocs.Search: +### 必要的函式庫與相依項目 +將 GroupDocs.Search 加入您的 Maven 專案: ```xml @@ -54,15 +111,15 @@ weight: 1 ``` -或者,從 [GroupDocs.Search for Java releases](https/) 下載最新的 JAR。 +或者,從 [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/) 下載最新的 JAR。 ### 取得授權 -從 [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) 取得免費試用或臨時授權,並在程式碼中套用。 +從 [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) 取得免費試用或臨時授權,並在應用程式啟動時載入。 ## 設定 GroupDocs.Search for Java ### 安裝資訊 -1. **Maven 整合:** 將上述的儲存庫與相依加入您的 `pom.xml`。 +1. **Maven 整合:** 將上述的儲存庫與相依項目加入您的 `pom.xml`。 2. **直接下載:** 將 JAR 檔案放置於專案的 classpath 中。 3. **授權套用:** 在應用程式啟動時載入授權檔案。 @@ -80,85 +137,94 @@ public class SearchSetup { } ``` +## 核心元件 +`Index` 類別是核心元件,用於儲存從文件中提取的可搜尋標記。它能在不重新讀取原始檔案的情況下快速查找任何詞彙或模式。 + ## 如何建立索引 -建立索引是快速搜尋的第一步。索引會儲存從文件中擷取的可搜尋標記。 +建立索引相當簡單:以儲存索引檔案的資料夾路徑實例化 `Index` 類別。建構子會在首次使用時建立必要的資料庫檔案,並為加入與搜尋文件做好準備。索引建立後,可在所有查詢中重複使用同一個索引。 ```java String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; Index index = new Index(indexFolder); ``` -## 如何加入文件 -索引資料夾建立後,將您想搜尋的檔案加入其中。 +## 如何新增文件 +要讓檔案可被搜尋,呼叫 `index.add`,傳入指向檔案路徑的 `Document`(或 `DocumentInfo`)實例。函式庫會解析內容、抽取標記,並將其儲存於索引中。此操作可針對單一檔案或批次執行,且更新會以增量方式合併。 ```java index.add("YOUR_DOCUMENT_DIRECTORY"); system.out.println("Documents added to the index."); ``` -## 文字形式的正則表達式搜尋 -文字型正則表達式查詢易於撰寫,適合一次性的搜尋。 +## 如何以文字形式執行正則表達式搜尋 +`RegexQuery` 定義了基於正則表達式的搜尋查詢。以純文字模式載入 `RegexQuery`,然後將其傳遞給 `Index` 的 `search` 方法。引擎會對索引標記評估該模式,返回符合的文件參考,使一次性查找快速且簡單。 ```java String query1 = "^((.)\\2{1,})"; ``` +## 如何以物件形式執行正則表達式搜尋 +`RegexQuery` 也可以以物件方式建立,並在多次搜尋中重複使用。先定義查詢一次,設定大小寫不敏感或模糊匹配等選項,然後重複呼叫 `index.search`。當相同模式應用於多個文件集合時,此方式可提升效能。 + ```java SearchResult result1 = index.search(query1); system.out.println("Number of occurrences found: " + result1.getDocumentCount()); ``` -## 物件形式的正則表達式搜尋 -物件導向查詢提供可重複使用且類型安全的搜尋定義。 - -```java -SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); -``` - -```java -SearchResult result2 = index.search(query2); -system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); -``` - -## 內容過濾正則表達式使用案例 -您可以使用正則表達式自動阻擋或標記符合特定模式的內容,例如: +## 正則表達式內容過濾使用案例 +您可以利用正則表達式自動阻擋或標記符合特定模式的內容,例如: - 偵測重複字元以進行垃圾郵件過濾 -- 尋找類似信用卡號的序列以執行資料隱私檢查 -- 擷取日期或 ID 供後續處理 +- 找出類似信用卡號的序列以進行資料隱私檢查 +- 抽取日期或 ID 以供後續處理 ## 實務應用 -1. **文件管理系統:** 讓使用者透過模式搜尋合約、發票或政策文件。 -2. **內容過濾:** 套用內容過濾正則表達式規則以審核使用者產生的文字。 -3. **資料分析:** 從非結構化檔案中抽取結構化資料(例如訂單編號)。 +1. **文件管理系統:** 依照模式(例如發票號碼)定位合約、發票或政策。 +2. **內容審核:** 套用正則表達式規則以審核論壇或聊天應用程式中的使用者產生文字。 +3. **資料抽取:** 從非結構化的 PDF 或 Word 檔案中提取訂單編號等結構化資料。 ## 效能考量 -- **索引更新:** 每當來源檔案變更時重新執行 `index.add`。 -- **記憶體管理:** 對於龐大語料庫,監控堆積使用情況並考慮增量索引。 -- **正則表達式設計:** 讓模式保持簡潔;過於寬泛的正則表達式會降低速度。 +- **索引更新:** 每當來源檔案變更時呼叫 `index.add`,以保持結果最新。 +- **記憶體管理:** 若文件數量超過 100 萬,請啟用增量索引以控制堆積使用量。 +- **正則表達式設計:** 保持模式簡潔;例如 `\\d{4}-\\d{2}-\\d{2}` 的執行速度比使用大量萬用字元的 `.*` 快 3 倍。 ## 結論 -您現在已了解如何在 Java 中使用 GroupDocs.Search **進行正則表達式搜尋**,從設定函式庫、建立索引到執行文字型與物件型查詢。這些技巧將協助您在任何 Java 應用程式中構建快速且具模式感知的搜尋功能。 +您現在已了解 **如何在 Java 中使用 GroupDocs.Search 進行正則表達式搜尋**,從安裝函式庫、建立索引到執行文字型與物件導向的查詢。這些技巧讓您能在任何 Java 應用程式中加入快速、具模式感知的搜尋功能,無論是建置文件入口網站、合規掃描器,或是資料探勘管線。 -## 常見問答 +## 常見問題 -**Q1: 在 GroupDocs.Search 中,文字型與物件型正則表達式查詢有何差異?** -A1: 文字型查詢較簡單但彈性較低,而物件型查詢提供更佳的管理與可重用性。 +**Q:** 文字型與物件型正則表達式查詢在 GroupDocs.Search 中有何差異? +**A:** 文字型查詢是快速的一行指令,而物件型查詢提供可重複使用、型別安全的定義,可儲存並在多次搜尋中重複使用。 -**Q2: 我可以使用 GroupDocs.Search 來索引非文字文件嗎?** -A2: 可以,它支援 PDF、Word 檔案、Excel 工作表以及許多其他格式。 +**Q:** GroupDocs.Search 能否索引非文字文件,例如 PDF 或 Excel 檔案? +**A:** 可以,函式庫會從 PDF、DOCX、XLSX、PPTX 以及超過 30 種其他格式中抽取可搜尋的文字。 -**Q3: 如何更新已存在的搜尋索引?** -A3: 使用 `index.add` 方法將新檔案或已修改的文件加入,以刷新索引。 +**Q:** 在新增檔案後,如何更新現有的搜尋索引? +**A:** 呼叫 `index.add` 並傳入新增或修改過的文件;函式庫會合併變更而不需重新建構整個索引。 -**Q4: 使用 GroupDocs.Search 時常見的問題有哪些?** -A4: 常見問題包括正則表達式模式錯誤導致無結果,以及在極大索引上性能下降。請檢查您的模式並保持索引最佳化。 +**Q:** 使用正則表達式與 GroupDocs.Search 時常見的陷阱是什麼? +**A:** 過於寬鬆的模式(例如 `.*`)會導致效能下降,且格式錯誤的表達式可能不會返回結果。請先在樣本集合上測試模式。 -**Q5: 我可以在哪裡找到更進階的 GroupDocs.Search 教學?** -A5: 前往 [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) 獲取詳細指南與範例。 +**Q:** 在哪裡可以找到更進階的 GroupDocs.Search 教學? +**A:** 前往 [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) 取得深入指南、API 參考與範例專案。 --- -**最後更新:** 2026-02-01 +**最後更新:** 2026-07-31 **測試版本:** GroupDocs.Search 25.4 -**作者:** GroupDocs \ No newline at end of file +**作者:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## 相關教學 + +- [精通 GroupDocs.Search Java:高效文件搜尋與索引管理](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [精通 GroupDocs.Search Java:模糊搜尋與文件索引指南](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [如何在 Java 中使用 GroupDocs.Search 建立文字索引指南](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/hongkong/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/hongkong/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..08cc0ae42 --- /dev/null +++ b/content/hongkong/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,274 @@ +--- +date: '2026-07-31' +description: 了解如何透過使用 GroupDocs.Search 將文件加入索引,並使用字元取代在索引過程中正規化文字,來實作 Java 的不分大小寫搜尋。 +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: Java 不分大小寫搜尋讓您能將文件加入索引並查詢,而無需擔心字母大小寫。本指南說明 GroupDocs.Search 如何在索引時正規化文字,以獲得快速且可靠的結果。 +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Java 不分大小寫搜尋 – 使用 GroupDocs 索引文件 +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: 在 Java 中將文件加入索引以進行不分大小寫搜尋 +type: docs +url: /zh-hant/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# 在 Java 中將文件新增至索引以實現不區分大小寫的搜尋 + +當您需要 **case insensitive search java** 能可靠地在使用者輸入方式不同的情況下找到資訊時,關鍵是將文件新增至索引同時正規化文字。在本教學中,我們將說明如何設定 GroupDocs.Search for Java,使每個被索引的文件在建立索引時自動轉為小寫(或其他轉換),從而保證不分大小寫的搜尋結果,無需額外的查詢時邏輯。 + +## 快速解答 +- **What does “add documents to index” mean?** 這表示將來源檔案載入可搜尋的資料結構,以便之後進行查詢。 +- **Why use character replacement?** 它會正規化每個字元——通常轉為小寫——讓搜尋自動忽略大小寫差異。 +- **Do I need a license?** 免費試用可用於開發;正式環境需購買完整授權。 +- **Which Java version is required?** Java 8 或更新版本;此函式庫最佳化於 Java 11+。 +- **Can I switch to case‑sensitive search when needed?** 可以——搜尋選項允許在每次查詢時切換大小寫敏感度。 + +## 在 GroupDocs.Search 中,「add documents to index」是什麼意思? + +將您的來源檔案(PDF、DOCX、TXT 等)載入可搜尋的索引,使引擎能快速取回。將文件新增至索引會解析每個檔案、擷取純文字,並將其儲存於最佳化的資料結構中,以支援快速查找。 + +## 為什麼在建立索引時啟用字元取代? + +字元取代會在建立索引的同時將每個字元轉換為預先定義的等價字元——最常見的是小寫。這可確保大小寫、變音符號或特定語系符號的差異不會影響搜尋結果。透過在索引階段正規化文字,引擎即可對一致的詞彙集合進行比對,提供快速且可靠的不分大小寫行為,且不需在每次搜尋時額外處理。 + +## 前置條件 +- **GroupDocs.Search for Java** 版本 25.4 或更新(此函式庫支援 30 多種檔案格式,且可在不將整個檔案載入記憶體的情況下索引上百頁的文件)。 +- **Java Development Kit (JDK)** 8 或以上已安裝。 +- 具備基本的 **Maven** 使用經驗(或能手動加入 JAR)。 + +## 設定 GroupDocs.Search for Java + +### Maven 設定 +將 GroupDocs 套件庫與相依性加入您的 `pom.xml`: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### 直接下載 +如果您不想使用 Maven,可從官方網站取得最新的 JAR:[GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/)。 + +### 取得授權 +- **Free Trial** – 下載試用授權以開始實驗。 +- **Temporary License** – 從 GroupDocs 入口網站申請延長測試授權。 +- **Full License** – 準備上線時購買正式授權。 + +### 基本初始化(建立索引) +以下程式碼片段會建立索引資料夾並啟用字元取代: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## 實作指南 + +### 在索引設定中啟用字元取代 +啟用此功能會告訴引擎在建立索引時取代字元,這是實現不分大小寫行為的核心步驟。 + +#### 步驟 1:設定 `IndexSettings` +`IndexSettings` 為控制索引如何儲存與處理文字的設定物件。將 `useCharacterReplacements` 設為 **true** 後,即會開啟自動小寫(或您自訂的對應)功能。 + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### 設定字元取代 +將每個字元映射至其小寫對應(或任何您需要的自訂對應)。 + +#### 步驟 2:定義並新增取代配對 +取代字典會保存類似 `'A' → 'a'`、`'É' → 'e'` 等配對。於索引前加入這些配對,可確保每個詞彙皆已正規化。 + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### 索引文件 +現在索引已就緒,您可以從任意資料夾 **add documents to index**。 + +#### 步驟 3:新增文件以進行索引 +GroupDocs.Search 會掃描目標目錄,從每種支援的檔案類型擷取文字,套用取代映射,並將詞彙寫入索引儲存空間。 + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### 執行區分大小寫的搜尋(可選) + +#### 步驟 4:執行區分大小寫的搜尋 +`SearchOptions` 會設定查詢行為,例如切換大小寫敏感度,讓您能細緻控制搜尋方式。 +`SearchOptions.setUseCaseSensitiveSearch(true)` 會在特定查詢中強制引擎將大小寫視為不同,覆寫預設的不分大小寫行為。 + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## 實務應用 +1. **行銷活動** – 正規化產品名稱,讓業務團隊在搜尋資產時不必在意大小寫。 +2. **客服支援** – 為客服系統的搜尋框提供即時回應,無論使用者輸入「login」或「Login」皆能正確找到相關文章。 +3. **電商目錄** – 確保購物者不論如何輸入商品標題都能找到商品,提高轉換率。 + +## 效能考量 +- **組織來源檔案** – 整齊的資料夾層級可減少 **add documents to index** 階段的掃描時間。 +- **監控記憶體** – 大規模索引會佔用大量 RAM;將檔案分批(500 – 1 000 件)處理可控制堆積使用量。 +- **非同步索引** – 若支援,請在背景執行索引作業,以保持 UI 響應並避免阻塞使用者操作。 + +## 常見問題與故障排除 +| 症狀 | 可能原因 | 解決方案 | +|---------|--------------|-----| +| 已知關鍵字未返回結果 | 未啟用字元取代 | 確認 `settings.setUseCharacterReplacements(true)` 已設定,且取代字典包含所需字元。 | +| 索引期間發生記憶體不足錯誤 | 同時索引過多大型檔案 | 改為分較小批次索引,或提升 JVM 堆積大小(`-Xmx4g`)。 | +| 搜尋意外返回區分大小寫的結果 | 設定了 `SearchOptions.setUseCaseSensitiveSearch(true)` | 移除或改為 `false`,恢復預設的不分大小寫行為。 | +| 索引載入時間過長 | 資料夾布局效率低或未使用 SSD | 重新整理檔案結構、移除不必要的文件,並將索引存放於高速 SSD。 | +| 特殊字元被忽略 | 取代字典缺少 Unicode 條目 | 為如 “é”、 “ß”、 “ø” 等字元新增對應映射。 | + +## 常見問答 + +**Q: How do I handle special characters (e.g., “é”, “ß”) during indexing?** +A: 在取代字典中加入這些字元,將其映射為 ASCII 等價或依需求保持不變。 + +**Q: Can I limit character replacement to a specific language?** +A: 可以。先建立僅包含目標語言字元的自訂取代陣列,再加入字典。 + +**Q: What should I do if the index takes a long time to load?** +A: 優化資料夾結構、移除不必要的檔案,並將索引存放於高速 SSD。增量索引亦可減少載入負擔。 + +**Q: Is it possible to revert the character replacements after indexing?** +A: 不行。取代已寫入索引資料,若要變更必須以新設定重新建立索引。 + +**Q: Where can I find more detailed API documentation?** +A: 官方文件與 API 參考提供完整說明(請參考下方資源)。 + +## 資源 +- [Documentation](https://docs.groupdocs.com/search/java/) +- [API Reference](https://reference.groupdocs.com/search/java) +- [Download GroupDocs.Search](https://releases.groupdocs.com/search/java/) +- [GitHub Repository](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [Free Support Forum](https://forum.groupdocs.com/c/search/10) +- [Temporary License Information](https://purchase.groupdocs.com/temporary-license/) + +--- + +**Last Updated:** 2026-07-31 +**Tested With:** GroupDocs.Search 25.4 for Java +**Author:** GroupDocs + +## 相關教學 + +- [Character Replacement in GroupDocs.Search Java: A Comprehensive Guide to Enhance Text Search and Indexing](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [Add documents to index: case‑sensitive Java search with GroupDocs](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [How to Add Documents to Index with GroupDocs.Search for Java](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/hongkong/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/hongkong/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..58b2c4736 --- /dev/null +++ b/content/hongkong/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,302 @@ +--- +date: '2026-07-31' +description: 了解如何透過實作自訂 Console Logger 並利用內建的 FileLogger,使用 GroupDocs 建立穩健的 .NET 日誌記錄,以達到有效的監控。 +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: 了解如何透過實作自訂 Console Logger 並利用內建的 FileLogger,使用 GroupDocs 建立穩健的 .NET + 日誌記錄,以達到有效的監控。 +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: 使用 GroupDocs Console Logger 建立穩健的 .NET 日誌記錄 +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: 使用 GroupDocs Console Logger 建立穩健的 .NET 日誌記錄 +type: docs +url: /zh-hant/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# 建立穩健的 .NET 記錄功能與 GroupDocs 主控台記錄器 + +## 介紹 + +您是否在追蹤 .NET 應用程式中的錯誤與操作流程時感到困難?**Create robust .NET logging** 是監控效能、除錯問題與維持順暢運作的關鍵。本教學將帶您使用 GroupDocs.Search 建立自訂主控台記錄器,並示範如何整合 GroupDocs.Redaction for .NET。完成後,您將擁有一套透明且易於維護的記錄解決方案,能直接嵌入現有程式碼基礎。 + +## 快速解答 +- **自訂記錄器的功能是什麼?** 直接將日誌條目寫入主控台,以在開發期間即時回饋。 +- **哪個 GroupDocs 元件提供檔案記錄?** 內建的 `FileLogger` 類別負責持久化日誌檔案。 +- **需要授權嗎?** 測試可使用臨時授權;正式環境必須使用正式授權。 +- **支援哪些 .NET 版本?** .NET Framework 4.5+、.NET Core 3.1+、.NET 5/6/7。 +- **此解決方案是執行緒安全的嗎?** 是——`ConsoleLogger` 與 `FileLogger` 均設計為可同時使用。 + +## 什麼是「Create robust .NET logging」? +**Create robust .NET logging** 意指建立可靠且高效能的記錄管線,能在應用程式的各層捕捉錯誤、警告與資訊訊息。透過 GroupDocs,您可以同時使用主控台與檔案目標,且設定簡單。 + +## 為什麼在 .NET 記錄中使用 GroupDocs? +GroupDocs 支援 **30+ .NET platforms**,且可處理高達 **2 GB** 的文件而不會明顯影響效能。其記錄 API 輕量、執行緒安全,且能無縫整合現有的例外處理模式,提供成熟的企業級解決方案。 + +## 前置條件 + +- **必備函式庫與版本:** GroupDocs.Search for .NET 與 GroupDocs.Redaction for .NET(最新相容版本)。 +- **環境設定:** Visual Studio 2022 或任何相容 .NET 的 IDE。 +- **知識前提:** 熟悉 C# 語法與基本記錄概念。 + +## 設定 GroupDocs.Redaction for .NET + +首先,將 GroupDocs.Redaction 加入您的專案。選擇最符合工作流程的方法。 + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +搜尋 “GroupDocs.Redaction” 並安裝最新版本。 + +### 取得授權 + +要開始使用,您可以取得臨時授權或購買正式授權。這讓您能在不受限制的情況下探索所有功能。請前往 [GroupDocs 官方網站](https://purchase.groupdocs.com/temporary-license/) 了解取得授權的更多細節。 + +### 基本初始化與設定 + +`Redactor` 類別提供 API 以修改與編輯受支援文件中的內容。 +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## 實作指南 + +### 如何使用 GroupDocs 實作自訂主控台記錄器? + +透過建立 `ConsoleLogger` 實例並將其傳遞給 `SearchOptions` 或任何接受 `ILogger` 的 GroupDocs 元件,即可載入自訂記錄器。記錄器會將每則訊息寫入 `Console.WriteLine`,讓您即時看到函式庫的運作情形,並在開發期間快速發現問題。 + +`ConsoleLogger` 類別實作 `ILogger`,直接將日誌訊息寫入主控台。 +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**步驟 1:定義您的自訂記錄器** +建立一個名為 `ConsoleLogger` 的新類別: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**步驟 2:與 GroupDocs.Search 整合** + +`SearchOptions` 用於設定搜尋行為,並接受 `ILogger` 進行記錄。 +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### 什麼是 FileLogger 以及何時使用? + +`FileLogger` 類別實作 `ILogger`,將日誌條目持久化至磁碟檔案,適合需要稽核追蹤的生產環境。GroupDocs 提供的 `FileLogger` 會將日誌寫入指定檔案,讓您在需要永久稽核紀錄時使用。您可以設定日誌輪替、檔案大小上限與日誌等級,以符合營運需求。 + +`FileLogger` 類別實作 `ILogger`,將日誌條目持久化至磁碟檔案。 +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### 為什麼選擇 GroupDocs 作為 .NET 記錄? + +GroupDocs 提供 **quantified** 優勢:支援 **over 50 output formats**,且能處理 **multi‑hundred‑page documents** 而不需將整個檔案載入記憶體。其記錄基礎設施每筆日誌僅增加不到 **2 ms** 的開銷,即使在高負載下也能保持最佳效能。 + +## 實務應用 + +以下是幾個記錄技術發揮效用的實務情境: + +1. **應用程式監控:** 在開發期間使用 `ConsoleLogger` 以即時觀測診斷資訊。 +2. **稽核追蹤:** 部署 `FileLogger` 以維持符合規範的稽核日誌,供法規報告使用。 +3. **除錯:** 利用詳細的追蹤訊息定位複雜搜尋管線中的問題。 +4. **效能分析:** 檢視日誌時間戳記以找出瓶頸,並優化資源使用。 + +## 效能考量 + +為了保持記錄快速且高效: + +- **限制日誌詳細度:** 在生產環境將記錄等級設為 `Info` 或 `Warning`,避免過度 I/O。 +- **有效利用資源:** 將 `FileLogger` 設定為最大檔案大小 10 MB,並啟用自動輪替。 +- **記憶體管理:** 使用 `using` 區塊或明確呼叫 `Dispose()` 釋放記錄器實例,以即時回收資源。 + +## 常見問題 + +**Q: 可以在多執行緒應用程式中使用自訂主控台記錄器嗎?** +A: 可以——`ConsoleLogger` 與 `FileLogger` 均為執行緒安全,您可以在平行任務中安全記錄而不會產生競爭條件。 + +**Q: 是否需要為 GroupDocs.Search 與 GroupDocs.Redaction 分別購買授權?** +A: 單一 GroupDocs 授權即可涵蓋所有模組,包括 Search 與 Redaction,簡化採購流程。 + +**Q: 如何變更 FileLogger 的日誌檔案位置?** +A: 建構 `FileLogger` 實例時設定 `LogFilePath` 屬性,例如 `new FileLogger("C:\\Logs\\app.log")`。 + +**Q: GroupDocs 支援哪些日誌等級?** +A: 函式庫提供 `Debug`、`Info`、`Warning`、`Error` 與 `Critical` 等級,讓您可細緻控制輸出。 + +**Q: 能否同時結合主控台與檔案記錄?** +A: 完全可以——建立複合記錄器,同時將訊息轉發至 `ConsoleLogger` 與 `FileLogger`,達到雙重可見性。 + +## 資源 + +- [GroupDocs Redaction 文件](https://docs.groupdocs.com/search/net/) +- [API 參考](https://reference.groupdocs.com/redaction/net) +- [下載 GroupDocs 程式庫](https://releases.groupdocs.com/search/net/) +- [免費支援論壇](https://forum.groupdocs.com/c/search/10) +- [臨時授權取得](https://purchase.groupdocs.com/temporary-license/) + +## 結論 + +本指南說明了如何透過建立自訂主控台記錄器並利用 GroupDocs 內建的 `FileLogger`,**create robust .NET logging**。這些工具在開發期間提供即時洞察,於生產環境則提供可靠且持久的日誌。您可以探索不同的日誌等級設定、嘗試複合記錄器,並將解決方案整合至更大型的服務,以實現全端可觀測性。 + +**下一步** + +- 測試不同的日誌等級設定,找出在細節與效能之間的最佳平衡點。 +- 為 `FileLogger` 加入結構化日誌(JSON 輸出),以便更容易匯入日誌分析平台。 +- 探索 GroupDocs 的其他模組,如 Search 與 Annotation,擴充文件處理管線。 + +--- + +**最後更新:** 2026-07-31 +**測試環境:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**作者:** GroupDocs + +## 相關教學 + +- [GroupDocs.Search .NET 例外處理與記錄教學](/search/net/exception-handling-logging/) +- [在 .NET 中實作 GroupDocs.Search 與 Redaction 以進行文件管理](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [精通 GroupDocs Search 與 Redaction 在 .NET:進階文件管理](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/hungarian/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/hungarian/java/searching/groupdocs-search-java-regex-tutorial/_index.md new file mode 100644 index 000000000..e78fed24a --- /dev/null +++ b/content/hungarian/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -0,0 +1,234 @@ +--- +date: '2026-07-31' +description: Ismerje meg, hogyan végezhet regex keresést Java-ban a GroupDocs.Search + használatával. Ez a lépésről‑lépésre útmutató bemutatja a setup, az index létrehozását + és a regex query példákat a gyors szöveges dokumentumelemzéshez. +keywords: +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: A regex keresés Java-ban a GroupDocs.Search használatával gyors mintakeresést + tesz lehetővé PDF, Word és szövegfájlok között. Kövesse ezt az útmutatót a set up, + a dokumentumok indexeléséhez, és a hatékony regex query-k futtatásához. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: Regex keresés Java-ban a GroupDocs.Search útmutatóval +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: Regex keresés Java-ban a GroupDocs.Search útmutatóval +type: docs +url: /hu/java/searching/groupdocs-search-java-regex-tutorial/ +weight: 1 +--- + +# Hogyan végezzünk regex keresést Java-ban a GroupDocs.Search segítségével + +Több ezer szöveges dokumentum keresése olyan érzés lehet, mintha tűt keresnénk egy szénakazalban. **Hogyan végezzünk regex keresést** Java-ban könnyedé válik, ha a nyelv erőteljes reguláris‑kifejezés motorját a GroupDocs.Search könyvtárral kombináljuk, amely indexet épít a villámgyors mintakereséshez. A következő néhány percben megmutatjuk, hogyan telepítsük a könyvtárat, hozzunk létre egy indexet, adjunk hozzá fájlokat, és futtassunk egyszerű szövegalapú és objektumalapú regex lekérdezéseket. A végére készen állsz majd, hogy robusztus mintakeresést építs be bármely Java alkalmazásba. + +## Gyors válaszok +- **Mi a fő könyvtár?** GroupDocs.Search for Java +- **Hogyan kezdjek?** Add the Maven dependency and instantiate an `Index` object +- **Szűrhetek tartalmat regex-szel?** Yes – use regex queries for content‑filtering scenarios +- **Szükségem van licencre?** A free trial or temporary license is required for production use +- **Melyik JDK verzió támogatott?** Java 8 or higher + +## Mi a regex keresés? +A regex keresés lehetővé teszi, hogy egyetlen művelettel mintákat találj, például dátumokat, e‑mail címeket vagy ismétlődő karaktereket számos fájlban. Egy egyszerű szöveges lekérdezést erőteljes, szabályalapú szkenneré alakítja, amely valós időben képes kinyerni vagy blokkolni a tartalmat. + +## Miért használjuk a GroupDocs.Search-t regex kereséshez? +A GroupDocs.Search egyszer indexeli a dokumentumokat, majd minden lekérdezésnél újra felhasználja ezt az indexet, így **akár 10× gyorsabb** kereséseket biztosít a nyers fájlszkenneléshez képest. A könyvtár **30+ fájlformátumot** támogat (PDF, DOCX, XLSX, PPTX, TXT, HTML és továbbiak), és több száz oldalas fájlokat is kezel anélkül, hogy a teljes fájlt a memóriába töltené. + +## Előfeltételek +- Java Development Kit (JDK) 8 vagy újabb +- Maven a függőségkezeléshez +- Alapvető ismeretek a Java reguláris kifejezésekkel + +### Szükséges könyvtárak és függőségek +Add GroupDocs.Search a Maven projektedhez: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +Alternatívaként töltsd le a legújabb JAR-t a [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/) oldalról. + +### Licenc megszerzése +Szerezz be egy ingyenes próba vagy ideiglenes licencet a [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) oldalról, és töltsd be az alkalmazás indításakor. + +## A GroupDocs.Search beállítása Java-hoz + +### Telepítési információk +1. **Maven integráció:** Add the repository and dependency shown above to your `pom.xml`. +2. **Közvetlen letöltés:** Place the JAR files on your project’s classpath. +3. **Licenc alkalmazása:** Load the license file at application start‑up. + +```java +import com.groupdocs.search.*; + +public class SearchSetup { + public static void main(String[] args) { + // Initialize the index by specifying a directory. + String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; + Index index = new Index(indexFolder); + + System.out.println("Index created successfully at: " + indexFolder); + } +} +``` + +## Alapvető komponensek +A `Index` osztály az az alapvető komponens, amely a dokumentumaidból kinyert kereshető tokeneket tárolja. Lehetővé teszi bármely kifejezés vagy minta gyors keresését az eredeti fájlok újraolvasása nélkül. + +## Hogyan hozzunk létre indexet +Az index létrehozása egyszerű: példányosítsd a `Index` osztályt egy mappával, ahol az indexfájlok tárolódnak. A konstruktor az első használatkor létrehozza a szükséges adatbázisfájlokat, és előkészíti a motort a dokumentumok hozzáadására és keresésére. Létrehozás után ugyanazt az indexet használhatod minden lekérdezéshez. + +```java +String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; +Index index = new Index(indexFolder); +``` + +## Hogyan adjunk dokumentumokat +Ahhoz, hogy egy fájlt kereshetővé tegyünk, hívd meg az `index.add` metódust egy `Document` (vagy `DocumentInfo`) példánnyal, amely a fájl útvonalára mutat. A könyvtár feldolgozza a tartalmat, kinyeri a tokeneket, és tárolja őket az indexben. Ez a művelet egyedi fájlokra vagy kötegekre is elvégezhető, és a frissítések fokozatosan egyesülnek. + +```java +index.add("YOUR_DOCUMENT_DIRECTORY"); +system.out.println("Documents added to the index."); +``` + +## Hogyan hajtsunk végre reguláris kifejezés keresést szöveges formában +`RegexQuery` egy reguláris‑kifejezés alapú keresési lekérdezést definiál. Tölts be egy `RegexQuery`-t egy egyszerű szöveges mintával, és add át az `Index` `search` metódusának. A motor a mintát az indexelt tokenekkel értékeli ki, és visszaadja a megfelelő dokumentumreferenciákat, így az egyszeri keresések gyorsak és egyszerűek. + +```java +String query1 = "^((.)\\2{1,})"; +``` + +## Hogyan hajtsunk végre reguláris kifejezés keresést objektum formában +`RegexQuery` objektumként is felépíthető, és több keresésnél újra felhasználható. Definiáld a lekérdezést egyszer, állíts be opciókat, például kis‑nagybetű érzéketlenséget vagy fuzzy egyezést, és ismételten hívd meg az `index.search` metódust. Ez a megközelítés javítja a teljesítményt, ha ugyanazt a mintát sok különböző dokumentumkészletre alkalmazzák. + +```java +SearchResult result1 = index.search(query1); +system.out.println("Number of occurrences found: " + result1.getDocumentCount()); +``` + +## Tartalomszűrés regex használati esetek +A regex segítségével automatikusan blokkolhatsz vagy jelölhetsz olyan tartalmakat, amelyek bizonyos mintáknak megfelelnek, például: + +- Ismétlődő karakterek észlelése spam szűréshez +- Hitelkártya-szerű sorozatok keresése adatvédelmi ellenőrzésekhez +- Dátumok vagy azonosítók kinyerése további feldolgozáshoz + +## Gyakorlati alkalmazások +1. **Dokumentumkezelő rendszerek:** Szerződések, számlák vagy irányelvek megtalálása minták alapján (pl. számlaszámok). +2. **Tartalom moderálás:** Alkalmazz regex szabályokat a felhasználók által generált szöveg moderálásához fórumokban vagy csevegőalkalmazásokban. +3. **Adatok kinyerése:** Strukturált adatokat, például rendelési számokat nyerj ki strukturálatlan PDF-ekből vagy Word fájlokból. + +## Teljesítmény szempontok +- **Index frissítések:** Hívd meg az `index.add`-t, amikor a forrásfájlok változnak, hogy az eredmények frissek legyenek. +- **Memória kezelése:** Több mint 1 millió dokumentum esetén engedélyezd az inkrementális indexelést, hogy a heap használat kontroll alatt maradjon. +- **Regex tervezés:** Tartsd a mintákat tömören; egy `\d{4}-\d{2}-\d{2}` minta 3× gyorsabb, mint egy `.*`-re épülő wildcard‑súlyú kifejezés. + +## Következtetés +Most már tudod, **hogyan végezzünk regex keresést** Java-ban a GroupDocs.Search használatával, a könyvtár telepítésétől és egy index létrehozásától a szövegalapú és objektumalapú lekérdezések végrehajtásáig. Ezek a technikák lehetővé teszik, hogy gyors, mintára érzékeny keresést adj hozzá bármely Java alkalmazáshoz, legyen az dokumentumportál, megfelelőségi szkenner vagy adatbányászati folyamat. + +## Gyakran Ismételt Kérdések + +**Q:** Mi a különbség a szövegalapú és objektumalapú regex lekérdezések között a GroupDocs.Search-ben? +**A:** A szövegalapú lekérdezések gyors egy‑sorosok, míg az objektumalapú lekérdezések újrahasználható, típusbiztos definíciókat biztosítanak, amelyeket tárolni és több keresésnél újra felhasználni lehet. + +**Q:** Indexelhet a GroupDocs.Search nem‑szöveges dokumentumokat, például PDF-eket vagy Excel fájlokat? +**A:** Igen, a könyvtár kereshető szöveget nyer ki a PDF-ekből, DOCX, XLSX, PPTX és több mint 30 egyéb formátumból. + +**Q:** Hogyan frissíthetem a meglévő keresőindexet új fájlok hozzáadása után? +**A:** Hívd meg az `index.add`-t az új vagy módosított dokumentumokkal; a könyvtár összevonja a változásokat anélkül, hogy újraépítené az egész indexet. + +**Q:** Mik a gyakori buktatók a regex használatakor a GroupDocs.Search-ben? +**A:** A túl általános minták (pl. `.*`) teljesítménycsökkenést okozhatnak, és a hibás kifejezések nem adhatnak eredményt. Mindig először teszteld a mintákat egy mintakészleten. + +**Q:** Hol találhatók a fejlettebb GroupDocs.Search oktatóanyagok? +**A:** Látogasd meg a [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) oldalt a részletes útmutatók, API referenciák és mintaprojektekért. + +--- + +**Legutóbb frissítve:** 2026-07-31 +**Tesztelve ezzel:** GroupDocs.Search 25.4 +**Szerző:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## Kapcsolódó oktatóanyagok + +- [Mester GroupDocs.Search Java: Hatékony dokumentumkeresés és indexkezelés](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [Mesteri GroupDocs.Search Java: Fuzzy keresés & Dokumentum indexelés útmutató](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [Hogyan indexeljünk szöveget Java-ban a GroupDocs.Search segítségével – útmutató](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/hungarian/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/hungarian/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..509b90740 --- /dev/null +++ b/content/hungarian/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,279 @@ +--- +date: '2026-07-31' +description: Ismerje meg, hogyan valósítható meg a case insensitive search Java a + dokumentumok indexhez adásával a GroupDocs.Search segítségével, karaktercserével + a szöveg normalizálásához az indexelés során. +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: A case insensitive search Java lehetővé teszi, hogy dokumentumokat + adjunk hozzá egy indexhez, és lekérdezzük őket a betűkészlet mérete nélkül. Ez az + útmutató bemutatja, hogyan normalizálja a szöveget a GroupDocs.Search az indexelés + során a gyors és megbízható eredményekért. +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Case Insensitive Search Java – Dokumentumok indexelése a GroupDocs segítségével +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: Dokumentumok hozzáadása az indexhez a Case‑Insensitive Search-hez Java-ban +type: docs +url: /hu/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# Dokumentumok hozzáadása az indexhez a kis- és nagybetűket figyelmen kívül hagyó kereséshez Java-ban + +Amikor **case insensitive search java**-ra van szükség, amely megbízhatóan megtalálja az információkat, függetlenül attól, hogyan gépelik be a felhasználók, a kulcs az, hogy a dokumentumokat egy indexhez adjuk hozzá, miközben normalizáljuk a szöveget. Ebben az útmutatóban bemutatjuk a GroupDocs.Search for Java konfigurálását, hogy minden indexelt dokumentum automatikusan kisbetűssé (vagy egyéb módon átalakítottá) legyen az indexelés során, ezáltal biztosítva a kis- és nagybetűket figyelmen kívül hagyó eredményeket extra lekérdezési logika nélkül. + +## Gyors válaszok +- **Mi jelent a „add documents to index”?** Ez azt jelenti, hogy a forrásfájlokat betöltjük egy kereshető adatstruktúrába, hogy később lekérdezhetők legyenek. +- **Miért használunk karaktercserét?** Ez normalizálja minden karaktert — általában kisbetűre — így a keresések automatikusan figyelmen kívül hagyják a kis- és nagybetű különbségeket. +- **Szükségem van licencre?** Egy ingyenes próba működik fejlesztéshez; egy teljes licenc szükséges a termelési környezethez. +- **Melyik Java verzió szükséges?** Java 8 vagy újabb; a könyvtár a Java 11+ célja a legjobb teljesítmény érdekében. +- **Átkapcsolhatok-e szükség esetén kis‑ és nagybetű érzékeny keresésre?** Igen — a keresési beállítások lehetővé teszik a case‑sensitivity kapcsolását lekérdezésenként. + +## Mi az a „add documents to index” a GroupDocs.Search-ben? +Töltsd fel a forrásfájljaidat (PDF, DOCX, TXT, stb.) egy kereshető indexbe, hogy a motor gyorsan vissza tudja őket találni. A dokumentumok indexhez adása minden fájlt feldolgoz, kinyeri a egyszerű szöveget, és egy optimalizált adatstruktúrában tárolja, amely gyors keresést tesz lehetővé. + +## Miért engedélyezzük a karaktercserét az indexelés során? +A karaktercsere minden karaktert egy előre meghatározott ekvivalensre alakít — leggyakrabban kisbetűre — az index felépítése közben. Ez biztosítja, hogy a nagybetűk, diakritikus jelek vagy a helyi specifikus szimbólumok változásai ne befolyásolják a keresési eredményeket. A szöveg indexelés közbeni normalizálásával a motor egységes tokenkészlethez tudja illeszteni a lekérdezéseket, gyors, megbízható kis- és nagybetűket figyelmen kívül hagyó viselkedést biztosítva anélkül, hogy minden keresésnél további feldolgozásra lenne szükség. + +## Előfeltételek +- **GroupDocs.Search for Java** verzió 25.4 vagy újabb (a könyvtár több mint 30 fájlformátumot támogat, és több száz oldalas dokumentumokat indexelhet anélkül, hogy az egész fájlt memóriába töltené). +- **Java Development Kit (JDK)** 8 vagy újabb telepítve. +- Alapvető ismeretek a **Maven**-ról (vagy a JAR-ok kézi hozzáadásának képessége). + +## A GroupDocs.Search for Java beállítása + +### Maven beállítás +Add the GroupDocs repository and dependency to your `pom.xml`: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### Közvetlen letöltés +Ha nem szeretnél Maven-t használni, töltsd le a legújabb JAR-t a hivatalos oldalról: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Licenc megszerzése +- **Free Trial** – tölts le egy próba licencet a kísérletezéshez. +- **Temporary License** – kérj egy kibővített teszt licencet a GroupDocs portálról. +- **Full License** – vásárolj termelési licencet, amikor készen állsz az éles üzemre. + +### Alap inicializálás (Az index létrehozása) +Az alábbi kódrészlet létrehoz egy index mappát és engedélyezi a karaktercseréket: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## Implementációs útmutató + +### Karaktercsere engedélyezése az index beállításaiban +Ennek a funkciónak az aktiválása azt mondja a motornak, hogy cserélje a karaktereket az indexelés során, ami a kis- és nagybetűket figyelmen kívül hagyó viselkedés alaplépése. + +#### 1. lépés: `IndexSettings` konfigurálása +`IndexSettings` a konfigurációs objektum, amely szabályozza, hogyan tárolja és dolgozza fel a szöveget az index. A `useCharacterReplacements` **true** értékre állításával bekapcsolod az automatikus kisbetűssé alakítást (vagy bármilyen egyéni leképezést, amit megadsz). + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### Karaktercserék konfigurálása +Térképezd le minden karaktert a megfelelő kisbetűs megfelelőjére (vagy bármilyen egyéni leképezésre, amire szükséged van). + +#### 2. lépés: Helyettesítő párok definiálása és hozzáadása +A helyettesítő szótár párokat tartalmaz, mint például `'A' → 'a'`, `'É' → 'e'` stb. Ezeknek a pároknak az indexelés előtt történő hozzáadása biztosítja, hogy minden token normalizálva legyen. + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### Dokumentumok indexelése +Most, hogy az index készen áll, **add documents to index**-et használhatsz bármely mappából. + +#### 3. lépés: Dokumentumok hozzáadása az indexeléshez +A GroupDocs.Search beolvassa a célkönyvtárat, kinyeri a szöveget minden támogatott fájltípusból, alkalmazza a helyettesítő térképet, és a tokeneket az index tárolóba írja. + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### Kis‑ és nagybetű érzékeny keresés végrehajtása (opcionális) + +#### 4. lépés: Kis‑ és nagybetű érzékeny keresések végrehajtása +`SearchOptions` konfigurálja a lekérdezés viselkedését, például a case sensitivity kapcsolását, lehetővé téve a keresések finomhangolását. +`SearchOptions.setUseCaseSensitiveSearch(true)` arra kényszeríti a motort, hogy egy adott lekérdezés során a nagy- és kisbetű karaktereket különbözőnek tekintse, felülbírálva az alapértelmezett kis‑ és nagybetűket figyelmen kívül hagyó viselkedést. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## Gyakorlati alkalmazások +1. **Marketing kampányok** – Normalizáld a termékneveket, hogy az értékesítési csapatok az eszközöket a betűkészlet figyelembevétele nélkül találhassák meg. +2. **Ügyfélszolgálat** – Segítsd a help‑desk keresőmezőket, hogy a megfelelő cikket adja vissza, függetlenül attól, hogy a felhasználó “login” vagy “Login”‑t ír be. +3. **E‑commerce katalógusok** – Biztosítsd, hogy a vásárlók megtalálják a termékeket, függetlenül attól, hogyan írják be a termékcímeket, ezáltal növelve a konverziós arányt. + +## Teljesítmény szempontok +- **Forrásfájlok szervezése** – Egy rendezett mappaszerkezet csökkenti a **add documents to index** lépés során a beolvasásra fordított időt. +- **Memória figyelése** – Nagy korpuszok indexelése jelentős RAM-ot fogyaszthat; a fájlok 500 – 1 000 elemes kötegekben történő feldolgozása a heap használatot kontroll alatt tartja. +- **Aszinkron indexelés** – Ha támogatott, futtasd az indexelést háttérszálon, hogy a felhasználói felület reagáló maradjon, és elkerüld a felhasználói műveletek blokkolását. + +## Gyakori problémák és hibaelhárítás +| Tünet | Valószínű ok | Javítás | +|---------|--------------|-----| +| Nincs eredmény egy ismert kifejezésre | A karaktercserék nincsenek engedélyezve | Ellenőrizd, hogy `settings.setUseCharacterReplacements(true)` be van-e állítva, és hogy a helyettesítő térkép tartalmazza-e a szükséges karaktereket. | +| Memóriahiány hiba az indexelés során | Túl sok nagy fájl egyidejű indexelése | Indexelj kisebb kötegekben, vagy növeld a JVM heap méretét (`-Xmx4g`). | +| A keresés váratlanul kis‑ és nagybetű érzékeny eredményeket ad | `SearchOptions.setUseCaseSensitiveSearch(true)` be lett állítva | Távolítsd el vagy állítsd `false`‑ra az alapértelmezett kis‑ és nagybetűket figyelmen kívül hagyó viselkedéshez. | +| Az index betöltési ideje meghaladja a várakozást | Hatékonytalan mappaszerkezet vagy SSD hiánya | Rendezd át a fájlokat, távolítsd el a nem használt dokumentumokat, és tárold az indexet egy gyors SSD-n. | +| A speciális karakterek figyelmen kívül maradnak | A helyettesítő térkép hiányzik Unicode bejegyzésekkel | Adj hozzá leképezéseket olyan karakterekhez, mint “é”, “ß”, “ø”, a kívánt ekvivalensekhez. | + +## Gyakran ismételt kérdések + +**Q: Hogyan kezeljem a speciális karaktereket (pl. “é”, “ß”) az indexelés során?** +A: Vedd fel ezeket a karaktereket a helyettesítő térképbe, és térképezd őket ASCII ekvivalenseikre, vagy tartsd őket változatlanul a keresési követelmények alapján. + +**Q: Korlátozhatom a karaktercserét egy adott nyelvre?** +A: Igen. Készíts egy egyedi helyettesítő tömböt, amely csak a célnyelv karaktereit tartalmazza, mielőtt hozzáadnád a szótárhoz. + +**Q: Mit tegyek, ha az index betöltése sokáig tart?** +A: Optimalizáld a mappaszerkezetet, távolítsd el a felesleges fájlokat, és tárold az indexet egy nagy sebességű SSD-n. Az inkrementális indexelés is csökkenti a betöltési terhet. + +**Q: Lehet visszavonni a karaktercseréket az indexelés után?** +A: Nem. A cserék az indexelt adatokba vannak beágyazva; az új beállításokkal újra kell építeni az indexet a módosításhoz. + +**Q: Hol találok részletesebb API dokumentációt?** +A: A hivatalos dokumentáció és API referencia kimerítő részleteket nyújt (lásd az alábbi forrásokat). + +## Források +- [Documentation](https://docs.groupdocs.com/search/java/) +- [API Reference](https://reference.groupdocs.com/search/java) +- [Download GroupDocs.Search](https://releases.groupdocs.com/search/java/) +- [GitHub Repository](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [Free Support Forum](https://forum.groupdocs.com/c/search/10) +- [Temporary License Information](https://purchase.groupdocs.com/temporary-license/) + +--- + +**Utolsó frissítés:** 2026-07-31 +**Tesztelve a következővel:** GroupDocs.Search 25.4 for Java +**Szerző:** GroupDocs + +--- + +## Kapcsolódó oktatóanyagok + +- [Karaktercsere a GroupDocs.Search Java-ban: Átfogó útmutató a szöveges keresés és indexelés fejlesztéséhez](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [Dokumentumok hozzáadása az indexhez: kis‑ és nagybetű érzékeny Java keresés a GroupDocs-szal](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [Hogyan adjunk dokumentumokat az indexhez a GroupDocs.Search for Java használatával](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/hungarian/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/hungarian/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..603399af8 --- /dev/null +++ b/content/hungarian/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,307 @@ +--- +date: '2026-07-31' +description: Ismerje meg, hogyan hozhat létre robusztus .NET naplózást a GroupDocs + segítségével úgy, hogy egy custom console logger-t valósít meg, és a beépített FileLogger-t + használja a hatékony felügyelethez. +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: Ismerje meg, hogyan hozhat létre robusztus .NET naplózást a GroupDocs + segítségével úgy, hogy egy custom console logger-t valósít meg, és a beépített FileLogger-t + használja a hatékony felügyelethez. +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: Robusztus .NET naplózás létrehozása a GroupDocs Console Logger segítségével +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: Robusztus .NET naplózás létrehozása a GroupDocs Console Logger segítségével +type: docs +url: /hu/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# Robusztus .NET naplózás létrehozása a GroupDocs konzol naplózóval + +## Bevezetés + +Küzd a hibák és a műveletek nyomon követésével .NET alkalmazásaiban? **Robusztus .NET naplózás létrehozása** elengedhetetlen a teljesítmény figyeléséhez, a hibák hibakereséséhez és a zökkenőmentes működés fenntartásához. Ez a bemutató végigvezet a saját konzol naplózó felépítésén a GroupDocs.Search használatával, miközben bemutatja, hogyan integrálható a GroupDocs.Redaction .NET-hez. A végére egy átlátható, karbantartható naplózási megoldást kap, amely könnyen beilleszthető a meglévő kódbázisba. + +## Gyors válaszok +- **Mi a saját naplózó feladata?** A naplóbejegyzéseket közvetlenül a konzolra írja, azonnali visszajelzést biztosítva a fejlesztés során. +- **Melyik GroupDocs komponens biztosít fájl naplózást?** A beépített `FileLogger` osztály kezeli a tartós naplófájlokat. +- **Szükségem van licencre?** Egy ideiglenes licenc teszteléshez működik; a termeléshez teljes licenc szükséges. +- **Mely .NET verziók támogatottak?** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **A megoldás szálbiztos?** Igen—mind a `ConsoleLogger`, mind a `FileLogger` úgy van tervezve, hogy párhuzamosan használható legyen. + +## Mi a “robosztus .NET naplózás létrehozása”? +**Robusztus .NET naplózás létrehozása** azt jelenti, hogy megbízható, nagy teljesítményű naplózási csővezetéket hozunk létre, amely rögzíti a hibákat, figyelmeztetéseket és információs üzeneteket az alkalmazás minden rétegén. A GroupDocs-szal ezt mind konzol, mind fájl célpontok használatával érheti el, miközben a konfiguráció egyszerű marad. + +## Miért használja a GroupDocs-t .NET naplózáshoz? +A GroupDocs **30+ .NET platformot** támogat, és akár **2 GB** méretű dokumentumokat is képes feldolgozni jelentős teljesítménycsökkenés nélkül. A naplózási API-k könnyűsúlyúak, szálbiztosak, és zökkenőmentesen integrálódnak a meglévő kivételkezelési mintákba, így egy bevált, vállalati szintű megoldást nyújtanak. + +## Előkövetelmények + +- **Szükséges könyvtárak és verziók:** GroupDocs.Search for .NET és GroupDocs.Redaction for .NET (legújabb kompatibilis kiadások). +- **Környezet beállítása:** Visual Studio 2022 vagy bármely .NET‑kompatibilis IDE. +- **Tudás előfeltételek:** C# szintaxis és az alapvető naplózási koncepciók ismerete. + +## A GroupDocs.Redaction beállítása .NET-hez + +Először adja hozzá a GroupDocs.Redaction-t a projektjéhez. Válassza ki a munkafolyamatához legjobban illeszkedő módszert. + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +Keresse meg a “GroupDocs.Redaction” csomagot, és telepítse a legújabb verziót. + +### Licenc beszerzése + +A kezdéshez ideiglenes licencet szerezhet, vagy vásárolhat teljes licencet. Ez lehetővé teszi, hogy korlátozások nélkül felfedezze az összes funkciót. További információkért a licenc beszerzéséről látogasson el a [GroupDocs hivatalos oldalára](https://purchase.groupdocs.com/temporary-license/). + +### Alapvető inicializálás és beállítás + +A `Redactor` osztály API-kat biztosít a támogatott dokumentumok tartalmának módosításához és redakciójához. +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## Implementációs útmutató + +### Hogyan valósítsunk meg egy egyedi konzol naplózót a GroupDocs-szal? + +Töltse be a saját naplózóját a `ConsoleLogger` példányosításával, és adja át a `SearchOptions` vagy bármely olyan GroupDocs komponensnek, amely `ILogger`-t fogad. A naplózó minden üzenetet a `Console.WriteLine`-ra ír, valós idejű láthatóságot biztosítva arról, hogy a könyvtár mit csinál, és segít gyorsan észrevenni a problémákat a fejlesztés során. + +A `ConsoleLogger` osztály megvalósítja az `ILogger` interfészt, hogy a naplóüzeneteket közvetlenül a konzolra írja. +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**1. lépés: Definiálja saját naplózóját** +Hozzon létre egy új `ConsoleLogger` nevű osztályt: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**2. lépés: Integrálás a GroupDocs.Search-szel** + +A `SearchOptions` beállítja a keresés viselkedését, és elfogad egy `ILogger`-t a naplózáshoz. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Mi a FileLogger és mikor kell használni? + +A `FileLogger` osztály megvalósítja az `ILogger` interfészt, és a naplóbejegyzéseket a lemezen lévő fájlba menti, így ideális a termelési környezetekben, ahol audit nyomvonalak szükségesek. +A GroupDocs által biztosított `FileLogger` osztály a megadott fájlba írja a naplóbejegyzéseket, ami tökéletes a termelési környezetekben, ahol tartós audit nyomvonalakra van szükség. +Beállíthatja a naplórotációt, a fájlméret korlátokat és a naplózási szinteket, hogy megfeleljenek az operációs igényeinek. + +A `FileLogger` osztály megvalósítja az `ILogger` interfészt, és a naplóbejegyzéseket a lemezen lévő fájlba menti. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Miért válassza a GroupDocs-t .NET naplózáshoz? + +A GroupDocs **mérhető** előnyt nyújt: több mint **50 kimeneti formátumot** támogat, és képes **több száz oldalas dokumentumok** kezelésére anélkül, hogy a teljes fájlt a memóriába töltené. A naplózási infrastruktúrája kevesebb, mint **2 ms** többlet költséget jelent bejegyzésenként, biztosítva, hogy a teljesítmény optimális maradjon még nagy terhelés alatt is. + +## Gyakorlati alkalmazások + +Íme néhány gyakorlati helyzet, ahol ezek a naplózási technikák kiemelkednek: + +1. **Alkalmazás felügyelet:** Használja a `ConsoleLogger`-t fejlesztés közben, hogy élő diagnosztikát lásson. +2. **Audit nyomvonalak:** Telepítse a `FileLogger`-t, hogy megfelelőségi szintű naplókat tartson fenn a szabályozási jelentésekhez. +3. **Hibakeresés:** Használjon részletes nyomkövetési üzeneteket a problémák pontos beazonosításához összetett keresőcsővezetékekben. +4. **Teljesítmény elemzés:** Vizsgálja meg a napló időbélyegeket a szűk keresztmetszetek azonosításához és az erőforrás-felhasználás optimalizálásához. + +## Teljesítmény szempontok + +A naplózás gyors és hatékony megtartásához: + +- **Korlátozza a napló részletességét:** Állítsa a naplózó szintjét `Info` vagy `Warning`-ra a termelésben, hogy elkerülje a túlzott I/O-t. +- **Hatékony erőforrás használat:** Állítsa be a `FileLogger`-t legfeljebb 10 MB maximális fájlmérettel, és engedélyezze az automatikus forgatást. +- **Memória kezelés:** Szabadítsa fel a naplózó példányokat `using` blokkokkal vagy explicit `Dispose()` hívásokkal, hogy az erőforrások gyorsan felszabaduljanak. + +## Gyakran feltett kérdések + +**K: Használhatom a saját konzol naplózót több szálas alkalmazásban?** +V: Igen—mind a `ConsoleLogger`, mind a `FileLogger` szálbiztos, így párhuzamos feladatokból is naplózhat versenyhelyzetek nélkül. + +**K: Szükségem van külön licencre a GroupDocs.Search és a GroupDocs.Redaction számára?** +V: Egyetlen GroupDocs licenc lefedi az összes modult, beleértve a Search és Redaction funkciókat, egyszerűsítve a beszerzést. + +**K: Hogyan változtathatom meg a naplófájl helyét a FileLogger esetén?** +V: Állítsa be a `LogFilePath` tulajdonságot a `FileLogger` példány létrehozásakor, például `new FileLogger("C:\\Logs\\app.log")`. + +**K: Milyen naplózási szinteket támogat a GroupDocs?** +V: A könyvtár `Debug`, `Info`, `Warning`, `Error` és `Critical` szinteket biztosít, lehetővé téve a finomhangolt kimenet-vezérlést. + +**K: Lehetséges egyszerre kombinálni a konzol és a fájl naplózást?** +V: Teljesen—hozzon létre egy összetett naplózót, amely a `ConsoleLogger` és a `FileLogger` felé is továbbítja az üzeneteket a kettős láthatóság érdekében. + +## Források + +- [GroupDocs Redaction dokumentáció](https://docs.groupdocs.com/search/net/) +- [API referencia](https://reference.groupdocs.com/redaction/net) +- [GroupDocs könyvtárak letöltése](https://releases.groupdocs.com/search/net/) +- [Ingyenes támogatási fórum](https://forum.groupdocs.com/c/search/10) +- [Ideiglenes licenc beszerzése](https://purchase.groupdocs.com/temporary-license/) + +## Következtetés + +Ebben az útmutatóban bemutattuk, hogyan **hozzunk létre robusztus .NET naplózást** egy egyedi konzol naplózó felépítésével és a GroupDocs beépített `FileLogger` használatával. Ezek az eszközök valós idejű betekintést nyújtanak a fejlesztés során, és megbízható, tartós naplókat biztosítanak a termeléshez. Fedezze fel a különböző naplózási szint beállításokat, kísérletezzen összetett naplózókkal, és integrálja a megoldást nagyobb szolgáltatásokba a teljes stack megfigyelhetőségéért. + +**Következő lépések** + +- Tesztelje a különböző naplózási szint beállításokat, hogy megtalálja az optimális egyensúlyt a részletezettség és a teljesítmény között. +- Adjon hozzá strukturált naplózást (JSON kimenet) a `FileLogger`-hez, hogy könnyebben be lehessen olvasni a napló‑elemző platformokba. +- Fedezze fel a GroupDocs egyéb moduljait, például a Search és az Annotation funkciókat, hogy kibővítse a dokumentum‑feldolgozó csővezetékét. + +--- + +**Utolsó frissítés:** 2026-07-31 +**Tesztelve a következőkkel:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**Szerző:** GroupDocs + +## Kapcsolódó oktatóanyagok + +- [Kivételkezelési és naplózási oktatóanyagok a GroupDocs.Search .NET-hez](/search/net/exception-handling-logging/) +- [GroupDocs.Search és Redaction megvalósítása .NET-ben dokumentumkezeléshez](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [A GroupDocs Search és Redaction mesteri használata .NET-ben: Haladó dokumentumkezelés](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/indonesian/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/indonesian/java/searching/groupdocs-search-java-regex-tutorial/_index.md new file mode 100644 index 000000000..9054f6f40 --- /dev/null +++ b/content/indonesian/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -0,0 +1,234 @@ +--- +date: '2026-07-31' +description: Pelajari cara melakukan pencarian regex di Java menggunakan GroupDocs.Search. + Tutorial langkah‑demi‑langkah ini menunjukkan penyiapan, pembuatan indeks, dan contoh + regex query untuk analisis dokumen teks yang cepat. +keywords: +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: Cara melakukan pencarian regex di Java menggunakan GroupDocs.Search + memungkinkan pencocokan pola yang cepat pada PDFs, Word, dan text files. Ikuti panduan + ini untuk menyiapkan, mengindeks dokumen, dan menjalankan regex query yang kuat. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: Cara Melakukan Pencarian Regex di Java dengan Panduan GroupDocs.Search +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: Cara Melakukan Pencarian Regex di Java dengan Panduan GroupDocs.Search +type: docs +url: /id/java/searching/groupdocs-search-java-regex-tutorial/ +weight: 1 +--- + +# Cara Mencari dengan Regex di Java menggunakan GroupDocs.Search + +Mencari melalui ribuan dokumen teks dapat terasa seperti mencari jarum dalam tumpukan jerami. **Cara melakukan pencarian regex** di Java menjadi mudah ketika Anda menggabungkan mesin ekspresi reguler yang kuat dari bahasa tersebut dengan GroupDocs.Search, sebuah perpustakaan yang membangun indeks untuk pencocokan pola yang sangat cepat. Dalam beberapa menit ke depan Anda akan melihat cara menginstal perpustakaan, membuat indeks, menambahkan file, dan menjalankan kueri regex berbasis teks sederhana serta berbasis objek. Pada akhirnya Anda akan siap menyematkan pencarian berbasis pola yang kuat ke dalam aplikasi Java apa pun. + +## Jawaban Cepat +- **Apa perpustakaan utama?** GroupDocs.Search for Java +- **Bagaimana cara memulai?** Tambahkan dependensi Maven dan instantiate sebuah objek `Index` +- **Bisakah saya memfilter konten dengan regex?** Ya – gunakan kueri regex untuk skenario pemfilteran konten +- **Apakah saya memerlukan lisensi?** Trial gratis atau lisensi sementara diperlukan untuk penggunaan produksi +- **Versi JDK mana yang didukung?** Java 8 atau lebih tinggi + +## Apa itu Pencarian Regex? +Pencarian regex memungkinkan Anda menemukan pola seperti tanggal, alamat email, atau karakter berulang di banyak file dalam satu operasi. Ini mengubah kueri teks biasa menjadi pemindai berbasis aturan yang kuat yang dapat mengekstrak atau memblokir konten secara langsung. + +## Mengapa Menggunakan GroupDocs.Search untuk Pencarian Regex? +GroupDocs.Search mengindeks dokumen sekali dan kemudian menggunakan kembali indeks tersebut untuk setiap kueri, memberikan pencarian **hingga 10× lebih cepat** dibandingkan pemindaian file mentah. Perpustakaan ini mendukung **lebih dari 30 format file** (PDF, DOCX, XLSX, PPTX, TXT, HTML, dan lainnya) dan dapat menangani file berisi ratusan halaman tanpa memuat seluruh file ke dalam memori. + +## Prasyarat +- Java Development Kit (JDK) 8 atau lebih tinggi +- Maven untuk manajemen dependensi +- Familiaritas dasar dengan ekspresi reguler Java + +### Perpustakaan dan Dependensi yang Diperlukan +Tambahkan GroupDocs.Search ke proyek Maven Anda: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +Atau, unduh JAR terbaru dari [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Akuisisi Lisensi +Dapatkan trial gratis atau lisensi sementara dari [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) dan muat pada saat aplikasi dimulai. + +## Menyiapkan GroupDocs.Search untuk Java + +### Informasi Instalasi +1. **Integrasi Maven:** Tambahkan repositori dan dependensi yang ditunjukkan di atas ke `pom.xml` Anda. +2. **Unduhan Langsung:** Tempatkan file JAR pada classpath proyek Anda. +3. **Penerapan Lisensi:** Muat file lisensi saat aplikasi dimulai. + +```java +import com.groupdocs.search.*; + +public class SearchSetup { + public static void main(String[] args) { + // Initialize the index by specifying a directory. + String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; + Index index = new Index(indexFolder); + + System.out.println("Index created successfully at: " + indexFolder); + } +} +``` + +## Komponen Inti +Kelas `Index` adalah komponen inti yang menyimpan token yang dapat dicari yang diekstrak dari dokumen Anda. Ini memungkinkan pencarian cepat dari istilah atau pola apa pun tanpa harus membaca ulang file asli. + +## Cara Membuat Indeks +Membuat indeks sangat mudah: instantiate kelas `Index` dengan jalur folder tempat file indeks akan disimpan. Konstruktor membuat file basis data yang diperlukan pada penggunaan pertama dan menyiapkan mesin untuk menambahkan dan mencari dokumen. Setelah dibuat, gunakan kembali indeks yang sama untuk semua kueri. + +```java +String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; +Index index = new Index(indexFolder); +``` + +## Cara Menambahkan Dokumen +Untuk membuat file dapat dicari, panggil `index.add` dengan instance `Document` (atau `DocumentInfo`) yang menunjuk ke jalur file. Perpustakaan mem‑parsing konten, mengekstrak token, dan menyimpannya dalam indeks. Operasi ini dapat dilakukan untuk file tunggal atau batch, dan pembaruan digabungkan secara inkremental. + +```java +index.add("YOUR_DOCUMENT_DIRECTORY"); +system.out.println("Documents added to the index."); +``` + +## Cara Melakukan Pencarian Ekspresi Reguler dalam Bentuk Teks +`RegexQuery` mendefinisikan kueri pencarian berbasis ekspresi reguler. Muat sebuah `RegexQuery` dengan pola teks biasa dan berikan ke metode `search` dari `Index`. Mesin mengevaluasi pola terhadap token yang diindeks dan mengembalikan referensi dokumen yang cocok, membuat pencarian satu kali cepat dan sederhana. + +```java +String query1 = "^((.)\\2{1,})"; +``` + +## Cara Melakukan Pencarian Ekspresi Reguler dalam Bentuk Objek +`RegexQuery` juga dapat dibangun sebagai objek dan digunakan kembali pada banyak pencarian. Definisikan kueri sekali, konfigurasikan opsi seperti tidak sensitif huruf besar/kecil atau pencocokan fuzzy, dan panggil `index.search` berulang kali. Pendekatan ini meningkatkan kinerja ketika pola yang sama diterapkan pada banyak set dokumen yang berbeda. + +```java +SearchResult result1 = index.search(query1); +system.out.println("Number of occurrences found: " + result1.getDocumentCount()); +``` + +## Kasus Penggunaan Regex untuk Penyaringan Konten +Anda dapat menggunakan regex untuk secara otomatis memblokir atau menandai konten yang cocok dengan pola tertentu, seperti: + +- Mendeteksi karakter berulang untuk penyaringan spam +- Menemukan urutan mirip kartu kredit untuk pemeriksaan privasi data +- Mengekstrak tanggal atau ID untuk pemrosesan lanjutan + +## Aplikasi Praktis +1. **Sistem Manajemen Dokumen:** Menemukan kontrak, faktur, atau kebijakan berdasarkan pola (misalnya, nomor faktur). +2. **Moderasi Konten:** Terapkan aturan regex untuk memoderasi teks yang dihasilkan pengguna di forum atau aplikasi obrolan. +3. **Ekstraksi Data:** Mengambil data terstruktur seperti nomor pesanan dari PDF atau file Word yang tidak terstruktur. + +## Pertimbangan Kinerja +- **Pembaruan Indeks:** Panggil `index.add` setiap kali file sumber berubah untuk menjaga hasil tetap segar. +- **Manajemen Memori:** Untuk korpus yang melebihi 1 juta dokumen, aktifkan pengindeksan inkremental untuk menjaga penggunaan heap tetap terkendali. +- **Desain Regex:** Jaga pola tetap singkat; pola seperti `\d{4}-\d{2}-\d{2}` berjalan 3× lebih cepat daripada ekspresi yang banyak wildcard seperti `.*`. + +## Kesimpulan +Anda kini tahu **cara melakukan pencarian regex** di Java menggunakan GroupDocs.Search, mulai dari menginstal perpustakaan dan membuat indeks hingga mengeksekusi kueri berbasis teks dan berbasis objek. Teknik ini memungkinkan Anda menambahkan pencarian cepat yang sadar pola ke aplikasi Java apa pun, baik Anda membangun portal dokumen, pemindai kepatuhan, atau alur kerja penambangan data. + +## Pertanyaan yang Sering Diajukan + +**Q:** Apa perbedaan antara kueri regex berbasis teks dan berbasis objek di GroupDocs.Search? +**A:** Kueri berbasis teks adalah satu baris cepat, sementara kueri berbasis objek menyediakan definisi yang dapat digunakan kembali, tipe‑aman, yang dapat disimpan dan dipakai ulang pada banyak pencarian. + +**Q:** Bisakah GroupDocs.Search mengindeks dokumen non‑teks seperti PDF atau file Excel? +**A:** Ya, perpustakaan mengekstrak teks yang dapat dicari dari PDF, DOCX, XLSX, PPTX, dan lebih dari 30 format lainnya. + +**Q:** Bagaimana cara memperbarui indeks pencarian yang ada setelah menambahkan file baru? +**A:** Panggil `index.add` dengan dokumen baru atau yang dimodifikasi; perpustakaan akan menggabungkan perubahan tanpa membangun ulang seluruh indeks. + +**Q:** Apa jebakan umum saat menggunakan regex dengan GroupDocs.Search? +**A:** Pola yang terlalu luas (mis., `.*`) dapat menyebabkan penurunan kinerja, dan ekspresi yang salah dapat tidak menghasilkan hasil. Selalu uji pola pada set contoh terlebih dahulu. + +**Q:** Di mana saya dapat menemukan tutorial GroupDocs.Search yang lebih lanjutan? +**A:** Kunjungi [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) untuk panduan mendalam, referensi API, dan proyek contoh. + +--- + +**Terakhir Diperbarui:** 2026-07-31 +**Diuji Dengan:** GroupDocs.Search 25.4 +**Penulis:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## Tutorial Terkait + +- [Menguasai GroupDocs.Search Java: Pencarian Dokumen Efisien dan Manajemen Indeks](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [Menguasai GroupDocs.Search Java: Panduan Pencarian Fuzzy & Pengindeksan Dokumen](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [Cara Mengindeks Teks di Java dengan Panduan GroupDocs.Search](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/indonesian/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/indonesian/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..873631036 --- /dev/null +++ b/content/indonesian/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,277 @@ +--- +date: '2026-07-31' +description: Pelajari cara mengimplementasikan pencarian tidak sensitif huruf di Java + dengan menambahkan dokumen ke indeks menggunakan GroupDocs.Search, serta menggunakan + penggantian karakter untuk menormalkan teks selama proses pengindeksan. +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: Pencarian tidak sensitif huruf di Java memungkinkan Anda menambahkan + dokumen ke indeks dan melakukan kueri tanpa khawatir tentang huruf besar/kecil. + Panduan ini menunjukkan bagaimana GroupDocs.Search menormalkan teks selama pengindeksan + untuk hasil yang cepat dan dapat diandalkan. +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Pencarian Tidak Sensitif Huruf Java – Indeks Dokumen dengan GroupDocs +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: Tambahkan Dokumen ke Indeks untuk Pencarian Tidak Sensitif Huruf di Java +type: docs +url: /id/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# Tambah Dokumen ke Indeks untuk Pencarian Tidak Sensitif Huruf Besar/Kecil di Java + +Ketika Anda membutuhkan **case insensitive search java** yang dapat menemukan informasi secara andal terlepas dari cara pengguna mengetiknya, kuncinya adalah menambahkan dokumen ke indeks sambil menormalkan teks. Dalam tutorial ini kami menjelaskan cara mengonfigurasi GroupDocs.Search untuk Java sehingga setiap dokumen yang Anda indeks secara otomatis diubah menjadi huruf kecil (atau transformasi lain) selama proses pengindeksan, menjamin hasil yang tidak sensitif huruf besar/kecil tanpa logika tambahan pada waktu kueri. + +## Jawaban Cepat +- **Apa arti “add documents to index”?** Artinya memuat file sumber ke dalam struktur data yang dapat dicari sehingga dapat dipertanyakan nanti. +- **Mengapa menggunakan penggantian karakter?** Ini menormalkan setiap karakter—biasanya menjadi huruf kecil—sehingga pencarian mengabaikan perbedaan huruf secara otomatis. +- **Apakah saya memerlukan lisensi?** Versi percobaan gratis dapat digunakan untuk pengembangan; lisensi penuh diperlukan untuk penerapan produksi. +- **Versi Java mana yang diperlukan?** Java 8 atau yang lebih baru; perpustakaan menargetkan Java 11+ untuk kinerja optimal. +- **Bisakah saya beralih ke pencarian sensitif huruf besar/kecil bila diperlukan?** Ya—opsi pencarian memungkinkan Anda mengaktifkan atau menonaktifkan sensitivitas huruf per kueri. + +## Apa itu “add documents to index” dalam GroupDocs.Search? +Muat file sumber Anda (PDF, DOCX, TXT, dll.) ke dalam indeks yang dapat dicari sehingga mesin dapat mengambilnya dengan cepat. Menambahkan dokumen ke indeks mem-parsing setiap file, mengekstrak teks polos, dan menyimpannya dalam struktur data yang dioptimalkan untuk pencarian cepat. + +## Mengapa mengaktifkan penggantian karakter selama pengindeksan? +Penggantian karakter mengubah setiap karakter menjadi padanan yang telah ditentukan—biasanya huruf kecil—sementara indeks dibangun. Hal ini memastikan variasi kapitalisasi, diakritik, atau simbol khusus lokal tidak memengaruhi hasil pencarian. Dengan menormalkan teks pada saat pengindeksan, mesin dapat mencocokkan kueri terhadap set token yang konsisten, memberikan perilaku tidak sensitif huruf besar/kecil yang cepat dan dapat diandalkan tanpa pemrosesan tambahan pada setiap pencarian. + +## Prasyarat +- **GroupDocs.Search for Java** versi 25.4 atau yang lebih baru (perpustakaan mendukung lebih dari 30 format file dan dapat mengindeks dokumen ratusan halaman tanpa memuat seluruh file ke memori). +- **Java Development Kit (JDK)** 8 atau yang lebih baru terpasang. +- Familiaritas dasar dengan **Maven** (atau kemampuan menambahkan JAR secara manual). + +## Menyiapkan GroupDocs.Search untuk Java + +### Pengaturan Maven +Tambahkan repositori GroupDocs dan dependensi ke `pom.xml` Anda: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### Unduhan Langsung +Jika Anda lebih memilih tidak menggunakan Maven, unduh JAR terbaru dari situs resmi: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Akuisisi Lisensi +- **Free Trial** – unduh lisensi percobaan untuk mulai bereksperimen. +- **Temporary License** – minta lisensi pengujian tambahan melalui portal GroupDocs. +- **Full License** – beli lisensi produksi saat Anda siap meluncurkan. + +### Inisialisasi Dasar (Buat indeks) +Cuplikan berikut membuat folder indeks dan mengaktifkan penggantian karakter: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## Panduan Implementasi + +### Aktifkan Penggantian Karakter dalam Pengaturan Indeks +Mengaktifkan fitur ini memberi tahu mesin untuk mengganti karakter saat mengindeks, yang merupakan langkah inti untuk perilaku tidak sensitif huruf besar/kecil. + +#### Langkah 1: Konfigurasikan `IndexSettings` +`IndexSettings` adalah objek konfigurasi yang mengontrol bagaimana indeks menyimpan dan memproses teks. Dengan menyetel `useCharacterReplacements` ke **true**, Anda mengaktifkan pengubahan otomatis menjadi huruf kecil (atau pemetaan khusus apa pun yang Anda sediakan). + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### Konfigurasikan Penggantian Karakter +Petakan setiap karakter ke padanan huruf kecilnya (atau pemetaan khusus apa pun yang Anda perlukan). + +#### Langkah 2: Definisikan dan Tambahkan Pasangan Penggantian +Kamus penggantian berisi pasangan seperti `'A' → 'a'`, `'É' → 'e'`, dll. Menambahkan pasangan ini sebelum pengindeksan memastikan setiap token dinormalkan. + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### Mengindeks Dokumen +Sekarang indeks sudah siap, Anda dapat **add documents to index** dari folder mana pun. + +#### Langkah 3: Tambahkan Dokumen untuk Pengindeksan +GroupDocs.Search memindai direktori target, mengekstrak teks dari setiap tipe file yang didukung, menerapkan peta penggantian, dan menulis token ke penyimpanan indeks. + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### Lakukan Pencarian Sensitif Huruf Besar/Kecil (Opsional) + +#### Langkah 4: Jalankan Pencarian Sensitif Huruf Besar/Kecil +`SearchOptions` mengonfigurasi perilaku kueri, seperti mengaktifkan atau menonaktifkan sensitivitas huruf, memungkinkan kontrol halus atas cara pencarian dilakukan. +`SearchOptions.setUseCaseSensitiveSearch(true)` memaksa mesin memperlakukan karakter huruf besar dan kecil sebagai berbeda selama kueri tertentu, menimpa perilaku default yang tidak sensitif huruf besar/kecil. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## Aplikasi Praktis +1. **Kampanye Pemasaran** – Normalisasi nama produk sehingga tim penjualan dapat menemukan aset tanpa memperhatikan huruf. +2. **Dukungan Pelanggan** – Dukung kotak pencarian help‑desk yang mengembalikan artikel yang tepat apakah pengguna mengetik “login” atau “Login”. +3. **Katalog E‑commerce** – Pastikan pembeli menemukan barang terlepas dari cara mereka mengetik judul produk, meningkatkan tingkat konversi. + +## Pertimbangan Kinerja +- **Atur File Sumber** – Hierarki folder yang rapi mengurangi waktu pemindaian selama langkah **add documents to index**. +- **Pantau Memori** – Pengindeksan korpus besar dapat mengonsumsi RAM signifikan; memproses file dalam batch 500 – 1 000 item menjaga penggunaan heap tetap terkendali. +- **Pengindeksan Asinkron** – Bila didukung, jalankan pengindeksan pada thread latar belakang agar UI tetap responsif dan tidak memblokir operasi pengguna. + +## Masalah Umum & Pemecahan Masalah +| Gejala | Penyebab Kemungkinan | Solusi | +|---------|----------------------|--------| +| Tidak ada hasil yang dikembalikan untuk istilah yang dikenal | Penggantian karakter tidak diaktifkan | Verifikasi `settings.setUseCharacterReplacements(true)` dan pastikan peta penggantian berisi karakter yang diperlukan. | +| Kesalahan out‑of‑memory saat pengindeksan | Mengindeks terlalu banyak file besar sekaligus | Indeks dalam batch lebih kecil atau tingkatkan heap JVM (`-Xmx4g`). | +| Pencarian mengembalikan hasil sensitif huruf secara tak terduga | `SearchOptions.setUseCaseSensitiveSearch(true)` telah disetel | Hapus atau set ke `false` untuk perilaku default yang tidak sensitif huruf. | +| Waktu muat indeks melebihi harapan | Tata letak folder tidak efisien atau SSD tidak digunakan | Atur ulang file, hapus dokumen yang tidak dipakai, dan simpan indeks pada SSD cepat. | +| Karakter khusus diabaikan | Peta penggantian tidak mencakup entri Unicode | Tambahkan pemetaan untuk karakter seperti “é”, “ß”, “ø” ke padanan yang diinginkan. | + +## Pertanyaan yang Sering Diajukan + +**T: Bagaimana cara menangani karakter khusus (mis., “é”, “ß”) selama pengindeksan?** +J: Sertakan karakter tersebut dalam peta penggantian Anda, memetakannya ke padanan ASCII atau membiarkannya tidak berubah sesuai kebutuhan pencarian. + +**T: Apakah saya dapat membatasi penggantian karakter pada bahasa tertentu?** +J: Ya. Buat array penggantian khusus yang hanya berisi karakter untuk bahasa target sebelum menambahkannya ke kamus. + +**T: Apa yang harus saya lakukan jika indeks membutuhkan waktu lama untuk dimuat?** +J: Optimalkan struktur folder, hapus file yang tidak diperlukan, dan simpan indeks pada SSD berkecepatan tinggi. Pengindeksan inkremental juga mengurangi beban muat. + +**T: Apakah memungkinkan untuk mengembalikan penggantian karakter setelah pengindeksan?** +J: Tidak. Penggantian sudah tertanam dalam data yang diindeks; Anda harus membangun ulang indeks dengan pengaturan baru untuk mengubahnya. + +**T: Di mana saya dapat menemukan dokumentasi API yang lebih detail?** +J: Dokumen resmi dan referensi API menyediakan detail lengkap (lihat Sumber Daya di bawah). + +## Sumber Daya +- [Documentation](https://docs.groupdocs.com/search/java/) +- [API Reference](https://reference.groupdocs.com/search/java) +- [Download GroupDocs.Search](https://releases.groupdocs.com/search/java/) +- [GitHub Repository](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [Free Support Forum](https://forum.groupdocs.com/c/search/10) +- [Temporary License Information](https://purchase.groupdocs.com/temporary-license/) + +--- + +**Terakhir Diperbarui:** 2026-07-31 +**Diuji Dengan:** GroupDocs.Search 25.4 for Java +**Penulis:** GroupDocs + +## Tutorial Terkait + +- [Penggantian Karakter dalam GroupDocs.Search Java: Panduan Komprehensif untuk Meningkatkan Pencarian Teks dan Pengindeksan](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [Add documents to index: pencarian Java sensitif huruf dengan GroupDocs](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [Cara Menambahkan Dokumen ke Indeks dengan GroupDocs.Search untuk Java](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/indonesian/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/indonesian/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..01d361668 --- /dev/null +++ b/content/indonesian/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,304 @@ +--- +date: '2026-07-31' +description: Pelajari cara membuat pencatatan .NET yang kuat menggunakan GroupDocs + dengan mengimplementasikan logger konsol khusus dan memanfaatkan FileLogger bawaan + untuk pemantauan yang efektif. +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: Pelajari cara membuat pencatatan .NET yang kuat menggunakan GroupDocs + dengan mengimplementasikan logger konsol khusus dan memanfaatkan FileLogger bawaan + untuk pemantauan yang efektif. +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: Buat Pencatatan .NET yang Kuat dengan GroupDocs Console Logger +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: Buat Pencatatan .NET yang Kuat dengan GroupDocs Console Logger +type: docs +url: /id/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# Buat Logging .NET yang Kuat dengan GroupDocs Console Logger + +## Pendahuluan + +Apakah Anda kesulitan melacak kesalahan dan operasi jejak dalam aplikasi .NET Anda? **Create robust .NET logging** penting untuk memantau kinerja, men-debug masalah, dan menjaga operasi yang lancar. Tutorial ini memandu Anda membangun logger konsol khusus menggunakan GroupDocs.Search sekaligus menunjukkan cara mengintegrasikan GroupDocs.Redaction untuk .NET. Pada akhir tutorial, Anda akan memiliki solusi logging yang transparan dan dapat dipelihara yang cocok langsung dengan basis kode Anda yang ada. + +## Jawaban Cepat +- **Apa yang dilakukan logger khusus?** Menulis entri log langsung ke konsol untuk umpan balik instan selama pengembangan. +- **Komponen GroupDocs mana yang menyediakan logging file?** Kelas `FileLogger` bawaan menangani file log yang persisten. +- **Apakah saya memerlukan lisensi?** Lisensi sementara berfungsi untuk pengujian; lisensi penuh diperlukan untuk produksi. +- **Versi .NET mana yang didukung?** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **Apakah solusi ini thread‑safe?** Ya—baik `ConsoleLogger` maupun `FileLogger` dirancang untuk penggunaan bersamaan. + +## Apa itu “create robust .NET logging”? +**Create robust .NET logging** berarti membangun pipeline logging yang andal dan berperforma tinggi yang menangkap kesalahan, peringatan, dan pesan informatif di semua lapisan aplikasi. Dengan GroupDocs, Anda dapat mencapai ini menggunakan target konsol dan file sekaligus menjaga konfigurasi tetap sederhana. + +## Mengapa menggunakan GroupDocs untuk logging .NET? +GroupDocs mendukung **30+ platform .NET** dan dapat memproses dokumen hingga **2 GB** tanpa penurunan kinerja yang terlihat. API logging-nya ringan, thread‑safe, dan terintegrasi mulus dengan pola penanganan pengecualian yang ada, memberikan Anda solusi terbukti tingkat perusahaan. + +## Prasyarat +- **Perpustakaan dan Versi yang Diperlukan:** GroupDocs.Search untuk .NET dan GroupDocs.Redaction untuk .NET (rilis kompatibel terbaru). +- **Pengaturan Lingkungan:** Visual Studio 2022 atau IDE .NET yang kompatibel. +- **Prasyarat Pengetahuan:** Familiaritas dengan sintaks C# dan konsep logging dasar. + +## Menyiapkan GroupDocs.Redaction untuk .NET + +Pertama, tambahkan GroupDocs.Redaction ke proyek Anda. Pilih metode yang paling sesuai dengan alur kerja Anda. + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +Cari “GroupDocs.Redaction” dan instal versi terbaru. + +### Akuisisi Lisensi + +Untuk memulai, Anda dapat memperoleh lisensi sementara atau membeli lisensi penuh. Ini akan memungkinkan Anda menjelajahi semua fitur tanpa batasan. Kunjungi [GroupDocs' official site](https://purchase.groupdocs.com/temporary-license/) untuk detail lebih lanjut tentang memperoleh lisensi Anda. + +### Inisialisasi dan Pengaturan Dasar + +Kelas `Redactor` menyediakan API untuk memodifikasi dan menyensor konten dalam dokumen yang didukung. +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## Panduan Implementasi + +### Cara mengimplementasikan logger konsol khusus dengan GroupDocs? + +Muat logger khusus Anda dengan membuat instance `ConsoleLogger` dan memberikannya ke `SearchOptions` atau komponen GroupDocs mana pun yang menerima `ILogger`. Logger menulis setiap pesan ke `Console.WriteLine`, memberi Anda visibilitas waktu nyata tentang apa yang dilakukan perpustakaan, dan membantu Anda dengan cepat menemukan masalah selama pengembangan. + +Kelas `ConsoleLogger` mengimplementasikan `ILogger` untuk menulis pesan log langsung ke konsol. +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Langkah 1: Definisikan Logger Kustom Anda** +Buat kelas baru bernama `ConsoleLogger`: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Langkah 2: Integrasikan dengan GroupDocs.Search** + +`SearchOptions` mengonfigurasi perilaku pencarian dan menerima `ILogger` untuk logging. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Apa itu FileLogger dan kapan menggunakannya? + +Kelas `FileLogger` mengimplementasikan `ILogger` dan menyimpan entri log ke file di disk, menjadikannya ideal untuk lingkungan produksi di mana jejak audit diperlukan. Kelas `FileLogger` yang disediakan oleh GroupDocs menulis entri log ke file yang ditentukan di disk, membuatnya sempurna untuk lingkungan produksi yang memerlukan jejak audit yang persisten. Anda dapat mengonfigurasi rotasi log, batas ukuran file, dan level log untuk memenuhi kebutuhan operasional Anda. + +Kelas `FileLogger` mengimplementasikan `ILogger` dan menyimpan entri log ke file di disk. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Mengapa memilih GroupDocs untuk logging .NET? + +GroupDocs memberikan keuntungan **terukur**: mendukung **lebih dari 50 format output** dan dapat menangani **dokumen ratusan halaman** tanpa memuat seluruh file ke memori. Infrastruktur logging-nya menambahkan overhead kurang dari **2 ms** per entri log, memastikan kinerja tetap optimal bahkan di beban berat. + +## Aplikasi Praktis + +Berikut beberapa skenario praktis di mana teknik logging ini bersinar: + +1. **Pemantauan Aplikasi:** Gunakan `ConsoleLogger` selama pengembangan untuk melihat diagnostik secara langsung. +2. **Jejak Audit:** Terapkan `FileLogger` untuk mempertahankan log tingkat kepatuhan untuk pelaporan regulasi. +3. **Debugging:** Manfaatkan pesan jejak terperinci untuk mengidentifikasi masalah dalam pipeline pencarian yang kompleks. +4. **Analisis Kinerja:** Periksa cap waktu log untuk mengidentifikasi bottleneck dan mengoptimalkan penggunaan sumber daya. + +## Pertimbangan Kinerja + +Untuk menjaga logging tetap cepat dan efisien: + +- **Batasi Verbositas Log:** Atur level logger ke `Info` atau `Warning` di produksi untuk menghindari I/O berlebih. +- **Penggunaan Sumber Daya Efisien:** Konfigurasikan `FileLogger` dengan ukuran file maksimum 10 MB dan aktifkan rollover otomatis. +- **Manajemen Memori:** Hapus instance logger dengan blok `using` atau panggilan `Dispose()` eksplisit untuk membebaskan sumber daya dengan cepat. + +## Pertanyaan yang Sering Diajukan + +**Q: Bisakah saya menggunakan logger konsol khusus dalam aplikasi multi‑thread?** +A: Ya—baik `ConsoleLogger` maupun `FileLogger` thread‑safe, sehingga Anda dapat melakukan logging dari tugas paralel tanpa kondisi balapan. + +**Q: Apakah saya memerlukan lisensi terpisah untuk GroupDocs.Search dan GroupDocs.Redaction?** +A: Satu lisensi GroupDocs mencakup semua modul, termasuk Search dan Redaction, menyederhanakan proses pengadaan. + +**Q: Bagaimana cara mengubah lokasi file log untuk FileLogger?** +A: Atur properti `LogFilePath` saat membuat instance `FileLogger`, misalnya `new FileLogger("C:\\Logs\\app.log")`. + +**Q: Level log apa yang didukung oleh GroupDocs?** +A: Perpustakaan menyediakan level `Debug`, `Info`, `Warning`, `Error`, dan `Critical`, memungkinkan kontrol yang halus atas output. + +**Q: Apakah memungkinkan menggabungkan logging konsol dan file secara bersamaan?** +A: Tentu—buat logger komposit yang meneruskan pesan ke both `ConsoleLogger` dan `FileLogger` untuk visibilitas ganda. + +## Sumber Daya + +- [Dokumentasi GroupDocs Redaction](https://docs.groupdocs.com/search/net/) +- [Referensi API](https://reference.groupdocs.com/redaction/net) +- [Unduh Perpustakaan GroupDocs](https://releases.groupdocs.com/search/net/) +- [Forum Dukungan Gratis](https://forum.groupdocs.com/c/search/10) +- [Akuisisi Lisensi Sementara](https://purchase.groupdocs.com/temporary-license/) + +## Kesimpulan + +Dalam panduan ini, kami telah menunjukkan cara **create robust .NET logging** dengan membangun logger konsol khusus dan memanfaatkan `FileLogger` bawaan GroupDocs. Alat-alat ini memberi Anda wawasan waktu nyata selama pengembangan dan log yang andal serta persisten untuk produksi. Jelajahi konfigurasi level log yang berbeda, bereksperimen dengan logger komposit, dan integrasikan solusi ke layanan yang lebih besar untuk observabilitas full‑stack. + +**Langkah Selanjutnya** + +- Uji pengaturan level log yang berbeda untuk menemukan keseimbangan optimal antara detail dan kinerja. +- Tambahkan logging terstruktur (output JSON) ke `FileLogger` untuk memudahkan ingest ke platform analisis log. +- Jelajahi modul lain GroupDocs, seperti Search dan Annotation, untuk memperluas pipeline pemrosesan dokumen Anda. + +--- + +**Terakhir Diperbarui:** 2026-07-31 +**Diuji Dengan:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**Penulis:** GroupDocs + +## Tutorial Terkait + +- [Tutorial Penanganan Pengecualian dan Logging untuk GroupDocs.Search .NET](/search/net/exception-handling-logging/) +- [Implementasi GroupDocs.Search dan Redaction di .NET untuk Manajemen Dokumen](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [Menguasai GroupDocs Search dan Redaction di .NET: Manajemen Dokumen Lanjutan](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/italian/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/italian/java/searching/groupdocs-search-java-regex-tutorial/_index.md index 94e6e6dce..9d10c9065 100644 --- a/content/italian/java/searching/groupdocs-search-java-regex-tutorial/_index.md +++ b/content/italian/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -1,39 +1,101 @@ --- -date: '2026-02-01' -description: Impara come eseguire ricerche regex in Java e come creare un indice con - GroupDocs.Search. Questo tutorial copre l'installazione, l'indicizzazione e esempi - di ricerca regex in Java. +date: '2026-07-31' +description: Scopri come eseguire ricerche regex in Java usando GroupDocs.Search. + Questo tutorial passo‑passo mostra la configurazione, la creazione dell'indice e + esempi di query regex per un'analisi rapida dei documenti di testo. keywords: -- regex searches -- GroupDocs.Search for Java -- Java text document analysis -title: 'Come eseguire ricerche regex in Java: padroneggiare GroupDocs.Search per l''analisi - di documenti di testo' +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: Eseguire ricerche regex in Java con GroupDocs.Search consente un rapido + abbinamento di pattern su PDF, Word e file di testo. Segui questa guida per configurare, + indicizzare i documenti e eseguire potenti query regex. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: Come eseguire ricerche regex in Java con la guida GroupDocs.Search +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: Come eseguire ricerche regex in Java con la guida GroupDocs.Search type: docs url: /it/java/searching/groupdocs-search-java-regex-tutorial/ weight: 1 --- -# Come eseguire ricerche regex in Java: padroneggiare GroupDocs.Search per leria che offre potenti capacità di pattern‑matching. In questa guida imparerai a configurare l'ambiente, creare un indice, aggiungere documenti ed eseguire query regex sia basate su testo sia basate su oggetti. Alla fine avrai un solido **regex search tutorial Java** che potrai applicare a progetti reali. +# Come eseguire ricerche regex in Java con GroupDocs.Search + +Cercare tra migliaia di documenti di testo può sembrare come trovare un ago in un pagliaio. **Come eseguire ricerche regex** in Java diventa semplice quando si combina il potente motore di espressioni regolari del linguaggio con GroupDocs.Search, una libreria che costruisce un indice per un abbinamento di pattern ultra‑veloce. Nei prossimi minuti vedrai come installare la libreria, creare un indice, aggiungere file e eseguire sia query regex basate su testo che orientate a oggetti. Alla fine sarai pronto a integrare una ricerca basata su pattern robusta in qualsiasi applicazione Java. ## Risposte rapide -- **Qual è la libreria principale?- **Posso filtrare il contenuto con regex?** Sì – usa query regex per scenari di filtraggio del contenuto È necessario un trial gratuito o una licenza temporanea per l'uso in produzione -- **Quale versione di JDK è o superiore +- **Qual è la libreria principale?** GroupDocs.Search for Java +- **Come inizio?** Aggiungi la dipendenza Maven e istanzia un oggetto `Index` +- **Posso filtrare il contenuto con regex?** Sì – usa query regex per scenari di filtraggio del contenuto +- **Ho bisogno di una licenza?** È necessario un trial gratuito o una licenza temporanea per l'uso in produzione +- **Quale versione di JDK è supportata?** Java 8 o superiore -## Cos'è la ricerca Regex? -La ricerca con espressioni regolari (regex) ti consente di individuare modelli di testo — come date, indirizzi email o caratteri ripetuti — su molti documenti in un'unica operazione. GroupDocs.Search compila questi modelli in query efficienti che vengono eseguite rapidamente anche su grandi set di dati. +## Cos'è la ricerca regex? +La ricerca regex ti consente di individuare pattern come date, indirizzi email o caratteri ripetuti su molti file in un’unica operazione. Trasforma una query di testo semplice in uno scanner potente basato su regole, capace di estrarre o bloccare contenuti al volo. -## Perché usare GroupDocs.Search per la ricerca Regex? -- **Velocità:** La ricerca basata su Supporta sia query di testo semplici sia query complesse orientate agli oggetti. -- **Ampio supporto di formati:** Funziona con PDF, Word, Excel, testo semplice e altro. +## Perché utilizzare GroupDocs.Search per la ricerca regex? +GroupDocs.Search indicizza i documenti una sola volta e poi riutilizza quell’indice per ogni query, offrendo **fino a 10× più velocità** rispetto alla scansione grezza dei file. La libreria supporta **oltre 30 formati di file** (PDF, DOCX, XLSX, PPTX, TXT, HTML e altri) e può gestire file di centinaia di pagine senza caricare l’intero documento in memoria. ## Prerequisiti - Java Development Kit (JDK) 8 o superiore - Maven per la gestione delle dipendenze -- Conoscenze di base di Java e delle espressioni regolari +- Familiarità di base con le espressioni regolari Java ### Librerie e dipendenze richieste -Includi GroupDocs.Search tramite Maven: +Aggiungi GroupDocs.Search al tuo progetto Maven: ```xml @@ -56,9 +118,9 @@ Includi GroupDocs.Search tramite Maven: In alternativa, scarica l'ultimo JAR da [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). ### Acquisizione della licenza -Ottieni una licenza di prova gratuita o temporanea da [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) e applicala nel tuo codice. +Ottieni una prova gratuita o una licenza temporanea da [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) e caricala all'avvio dell'applicazione. -## Configurare GroupDocs.Search per Java +## Configurazione di GroupDocs.Search per Java ### Informazioni sull'installazione 1. **Integrazione Maven:** Aggiungi il repository e la dipendenza mostrati sopra al tuo `pom.xml`. @@ -79,8 +141,11 @@ public class SearchSetup { } ``` +## Componenti principali +La classe `Index` è il componente centrale che memorizza i token ricercabili estratti dai tuoi documenti. Consente una ricerca rapida di qualsiasi termine o pattern senza dover rileggere i file originali. + ## Come creare un indice -Creare un indice è il primo passo verso ricerche veloci. L'indice memorizza i token ricercabili estratti dai tuoi documenti. +Creare un indice è semplice: istanzia la classe `Index` con il percorso di una cartella dove verranno salvati i file dell’indice. Il costruttore crea i file di database necessari al primo utilizzo e prepara il motore per l’aggiunta e la ricerca dei documenti. Una volta creato, riutilizza lo stesso indice per tutte le query. ```java String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; @@ -88,75 +153,80 @@ Index index = new Index(indexFolder); ``` ## Come aggiungere documenti -Una volta che la cartella dell'indice esiste, popolala con i file che desideri cercare. +Per rendere un file ricercabile, chiama `index.add` con un'istanza di `Document` (o `DocumentInfo`) che punta al percorso del file. La libreria analizza il contenuto, estrae i token e li memorizza nell’indice. L’operazione può essere eseguita su file singoli o in batch, e gli aggiornamenti vengono uniti in modo incrementale. ```java index.add("YOUR_DOCUMENT_DIRECTORY"); system.out.println("Documents added to the index."); ``` -## Ricerca con espressioni regolari in forma testuale -Le query regex basate su testo sono rapide da scrivere e perfette per ricerche una tantum. +## Come eseguire una ricerca di espressione regolare in forma testuale +`RegexQuery` definisce una query di ricerca basata su espressione regolare. Carica una `RegexQuery` con un pattern di testo semplice e passala al metodo `search` dell’`Index`. Il motore valuta il pattern sui token indicizzati e restituisce i riferimenti ai documenti corrispondenti, rendendo le ricerche una tantum rapide e semplici. ```java String query1 = "^((.)\\2{1,})"; ``` +## Come eseguire una ricerca di espressione regolare in forma oggetto +`RegexQuery` può anche essere costruita come oggetto e riutilizzata in più ricerche. Definisci la query una volta, configura opzioni come l’insensibilità al maiuscolo/minuscolo o il fuzzy matching, e invoca `index.search` ripetutamente. Questo approccio migliora le prestazioni quando lo stesso pattern viene applicato a molti insiemi di documenti diversi. + ```java SearchResult result1 = index.search(query1); system.out.println("Number of occurrences found: " + result1.getDocumentCount()); ``` -## Ricerca con espressioni regolari in forma oggetto -Le query orientate agli oggetti ti forniscono definizioni di ricerca riutilizzabili e tipicamente sicure. - -```java -SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); -``` +## Casi d'uso della filtrazione del contenuto con regex +Puoi impiegare regex per bloccare o segnalare automaticamente contenuti che corrispondono a determinati pattern, ad esempio: -```java -SearchResult result2 = index.search(query2); -system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); -``` - -## Casi d'uso del filtraggio del contenuto con regex -Puoi utilizzare regex per bloccare o segnalare automaticamente contenuti che corrispondono a determinati modelli, come: - Rilevare caratteri ripetuti per il filtraggio dello spam - Trovare sequenze simili a numeri di carta di credito per controlli di privacy dei dati - Estrarre date o ID per l'elaborazione a valle ## Applicazioni pratiche -1. **Sistemi di gestione documentale:** Consente agli utenti di individuare contratti, fatture o politiche tramite pattern. -2. **Filtraggio dei contenuti:** Applica regole regex di filtraggio per moderare il testo generato dagli utenti. -3. **Analisi dei dati:** Estrai dati strutturati (ad es., numeri d'ordine) da file non strutturati. +1. **Sistemi di gestione documentale:** Individua contratti, fatture o politiche tramite pattern (ad es., numeri di fattura). +2. **Moderazione dei contenuti:** Applica regole regex per moderare testi generati dagli utenti in forum o app di chat. +3. **Estrazione dati:** Estrarre dati strutturati come numeri d'ordine da PDF o file Word non strutturati. ## Considerazioni sulle prestazioni -- **Aggiornamenti dell'indice:** Riesegui `index.add` ogni volta che i file sorgente cambiano. -- **Gestione della memoria:** Per corpora massivi, monitora l'uso dell'heap e considera l'indicizzazione incrementale. -- **Progettazione delle regex:** Mantieni i pattern concisi; regex troppo ampie possono ridurre la velocità. +- **Aggiornamenti dell'indice:** Chiama `index.add` ogni volta che i file sorgente cambiano per mantenere i risultati aggiornati. +- **Gestione della memoria:** Per corpora con più di 1 milione di documenti, abilita l'indicizzazione incrementale per mantenere l'uso dell'heap sotto controllo. +- **Progettazione delle regex:** Mantieni i pattern concisi; un pattern come `\d{4}-\d{2}-\d{2}` è 3× più veloce di un'espressione con molti wildcard come `.*`. ## Conclusione -Ora sai **how to regex search** in Java usando GroupDocs.Search, dalla configurazione della libreria e creazione di un indice all'esecuzione di query sia basate su testo sia basate su oggetti. Queste tecniche ti aiuteranno a costruire funzionalità di ricerca veloci e consapevoli dei pattern in qualsiasi applicazione Java. +Ora sai **come eseguire ricerche regex** in Java usando GroupDocs.Search, dall'installazione della libreria alla creazione di un indice, fino all'esecuzione di query sia basate su testo che orientate a oggetti. Queste tecniche ti permettono di aggiungere una ricerca veloce e consapevole dei pattern a qualsiasi applicazione Java, sia che tu stia costruendo un portale documentale, uno scanner di conformità o una pipeline di data‑mining. -## Sezione FAQ +## Domande frequenti -**Q1: Qual è la differenza tra query regex basate su testo e basate su oggetti in GroupDocs.Search?** -A1: Le query basate su testo sono più semplici ma meno flessibili, mentre le query basate su oggetti offrono una migliore gestione e riutilizzabilità. +**Q:** Qual è la differenza tra query regex basate su testo e query regex basate su oggetto in GroupDocs.Search? +**A:** Le query basate su testo sono rapide e monolinea, mentre le query basate su oggetto forniscono definizioni riutilizzabili e tipizzate che possono essere memorizzate e riutilizzate in più ricerche. -**Q2: Posso usare GroupDocs.Search per indicizzare documenti non‑testo?** -A2: Sì, supporta PDF, file Word, fogli Excel e molti altri formati. +**Q:** GroupDocs.Search può indicizzare documenti non testuali come PDF o file Excel? +**A:** Sì, la libreria estrae testo ricercabile da PDF, DOCX, XLSX, PPTX e oltre 30 altri formati. -**Q3: Come aggiorno un indice di ricerca esistente?** -A3: Usa il metodo `index.add` con i documenti nuovi o modificati per aggiornare l'indice. +**Q:** Come aggiorno un indice di ricerca esistente dopo aver aggiunto nuovi file? +**A:** Chiama `index.add` con i documenti nuovi o modificati; la libreria unirà le modifiche senza ricostruire l'intero indice. -**Q4: Quali sono alcuni problemi comuni nell'uso di GroupDocs.Search?** -A4: I problemi tipici includono pattern regex malformati che non restituiscono risultati e cali di prestazioni su indici molto grandi. Verifica i tuoi pattern e mantieni l'indice ottimizzato. +**Q:** Quali sono le insidie comuni quando si usa regex con GroupDocs.Search? +**A:** Pattern troppo generici (ad es., `.*`) possono causare degrado delle prestazioni, e espressioni malformate possono non restituire risultati. Testa sempre i pattern su un set di campioni prima. -**Q5: Dove posso trovare tutorial più avanzati su GroupDocs.Search?** -A5: Visita la [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) per guide dettagliate ed esempi. +**Q:** Dove posso trovare tutorial più avanzati su GroupDocs.Search? +**A:** Visita la [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) per guide approfondite, riferimenti API e progetti di esempio. ---- - -**Ultimo aggiornamento:** 2026-02-01 +**Ultimo aggiornamento:** 2026-07-31 **Testato con:** GroupDocs.Search 25.4 -**Autore:** GroupDocs \ No newline at end of file +**Autore:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## Tutorial correlati + +- [Master GroupDocs.Search Java: Ricerca efficiente di documenti e gestione dell'indice](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [Mastering GroupDocs.Search Java: Guida alla ricerca fuzzy e indicizzazione dei documenti](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [Come indicizzare testo in Java con GroupDocs.Search – Guida](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/italian/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/italian/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md index 7cdb95b31..28a35c32b 100644 --- a/content/italian/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md +++ b/content/italian/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -1,12 +1,72 @@ --- -date: '2026-02-03' -description: Scopri come aggiungere documenti all'indice ed eseguire ricerche efficienti - senza distinzione tra maiuscole e minuscole in Java con GroupDocs.Search, utilizzando - la sostituzione dei caratteri durante l'indicizzazione. +date: '2026-07-31' +description: Scopri come implementare la ricerca senza distinzione tra maiuscole e + minuscole in Java aggiungendo documenti a un indice con GroupDocs.Search, usando + la sostituzione dei caratteri per normalizzare il testo durante l'indicizzazione. keywords: -- case-insensitive search in Java -- character replacement during indexing -- GroupDocs.Search setup +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: La ricerca senza distinzione tra maiuscole e minuscole in Java ti + consente di aggiungere documenti a un indice e interrogarli senza preoccuparti del + caso delle lettere. Questa guida mostra come GroupDocs.Search normalizza il testo + durante l'indicizzazione per risultati rapidi e affidabili. +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Ricerca senza distinzione tra maiuscole e minuscole in Java – Indicizza + documenti con GroupDocs +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search title: Aggiungi documenti all'indice per la ricerca senza distinzione tra maiuscole e minuscole in Java type: docs @@ -14,26 +74,29 @@ url: /it/java/searching/master-case-insensitive-search-java-groupdocs-search/ weight: 1 --- -# Aggiungere Documenti all'Indice percolo in Java +# Aggiungere Documenti all'Indice per la Ricerca Case‑Insensitive in Java -Quando è necessario **aggiungere documenti all'indice** e garantire che gli utenti possano trovare ciò che cercano indipendentemente dal caso delle lettere, una ricerca non sensibile al mai è essenziale. In questa guida vedremo comeizzato affidabili e non sensibili al caso ogni volta. +Quando hai bisogno di **case insensitive search java** che trovi in modo affidabile le informazioni indipendentemente da come gli utenti le digitano, la chiave è aggiungere documenti a un indice normalizzando il testo. In questo tutorial vediamo come configurare GroupDocs.Search per Java in modo che ogni documento indicizzato venga automaticamente convertito in minuscolo (o trasformato in altro modo) durante l'indicizzazione, garantendo risultati case‑insensitive senza logica aggiuntiva al momento della query. - “aggiungere documenti all'indice”?** Significa inserire i tuoi file sorgente in un indice ricercabile affinché possano essere interrogati in seguito. -- **Perché utilizzare la sostituzione dei caratteri?** Normalizza il testo (ad esempio forzando tutto in minuscolo) così le ricerche ignorano le differenze di caso. -- **È necessaria una licenza?** Una prova gratuita è sufficiente per lo sviluppo; è richiesta una licenza completa per la produzione. -- **Quale versione di Java è richiesta?** Java 8 o superiore; la libreria è ottimizzata per Java 11+ per la massima compatibilità. -- **Posso eseguire ricerche sensibili al caso se necessario?** Sì—le opzioni di ricerca consentono di attivare il comportamento sensibile al caso per ogni query. +## Risposte Rapide +- **Cosa significa “add documents to index”?** Significa caricare i file sorgente in una struttura dati ricercabile così che possano essere interrogati in seguito. +- **Perché usare la sostituzione dei caratteri?** Normalizza ogni carattere — tipicamente in minuscolo — così le ricerche ignorano automaticamente le differenze di maiuscole/minuscole. +- **Ho bisogno di una licenza?** Una prova gratuita funziona per lo sviluppo; è necessaria una licenza completa per le distribuzioni in produzione. +- **Quale versione di Java è richiesta?** Java 8 o successiva; la libreria è ottimizzata per Java 11+ per prestazioni ottimali. +- **Posso passare a una ricerca case‑sensitive quando necessario?** Sì — le opzioni di ricerca consentono di attivare/disattivare la sensibilità al maiuscolo per ogni query. -## Che cosa significa “aggiungere documenti all'indice” in GroupDocs.Search? -Aggiungere documenti a un indice significa caricare file (PDF, documenti Word, testo semplice, ecc.) in una struttura dati che GroupDocs.Search può interrogare. La libreria analizza ogni file, estrae il testo ricercabile e lo memorizza in modo da rendere le ricerche rapide ed efficienti. +## Che cosa significa “add documents to index” in GroupDocs.Search? + +Carica i tuoi file sorgente (PDF, DOCX, TXT, ecc.) in un indice ricercabile affinché il motore possa recuperarli rapidamente. Aggiungere documenti a un indice analizza ogni file, estrae il testo semplice e lo memorizza in una struttura dati ottimizzata che consente ricerche veloci. ## Perché abilitare la sostituzione dei caratteri durante l'indicizzazione? -La sostituzione dei caratteri trasforma ogni carattere in un equivalente predefinito—di solito minuscolo—mentre l'indice viene costruito. Questo garantisce che una query come **“Promotion”** corrisponda a **“promotion”**, **“PROMOTION”** o a qualsiasi variante mista senza ulteriori sforzi da parte dell'utente. + +La sostituzione dei caratteri converte ogni carattere in un equivalente predefinito — più comunemente in minuscolo — mentre l'indice viene costruito. Questo garantisce che le variazioni di maiuscole/minuscole, diacritici o simboli specifici della locale non influenzino i risultati della ricerca. Normalizzando il testo al momento dell'indicizzazione, il motore può confrontare le query con un insieme di token coerente, fornendo un comportamento case‑insensitive rapido e affidabile senza elaborazioni aggiuntive per ogni ricerca. ## Prerequisiti -- **GroupDocs.Search per Java** versione 25.4 o più recente. +- **GroupDocs.Search for Java** versione 25.4 o successiva (la libreria supporta oltre 30 formati di file e può indicizzare documenti di centinaia di pagine senza caricare l'intero file in memoria). - **Java Development Kit (JDK)** 8 o successivo installato. -- Familiarità di base con **Maven** (o capacità di aggiungere manualmente i JAR). +- Familiarità di base con **Maven** (o capacità di aggiungere JAR manualmente). ## Configurazione di GroupDocs.Search per Java @@ -62,12 +125,12 @@ Aggiungi il repository GroupDocs e la dipendenza al tuo `pom.xml`: Se preferisci non usare Maven, scarica l'ultimo JAR dal sito ufficiale: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). ### Acquisizione della Licenza -- **Prova Gratuita** – scarica una licenza di prova per iniziare a sperimentare. -- **Licenza Temporanea** – richiedi una licenza di test estesa dal portale GroupDocs. -- **Licenza Completa** – acquista una licenza di produzione quando sei pronto per il rilascio. +- **Free Trial** – scarica una licenza di prova per iniziare a sperimentare. +- **Temporary License** – richiedi una licenza di test estesa dal portale GroupDocs. +- **Full License** – acquista una licenza di produzione quando sei pronto a mettere in produzione. ### Inizializzazione di Base (Creare l'indice) -Il frammento seguente crea una cartella per l'indice e abilita le sostituzioni dei caratteri: +Il frammento seguente crea una cartella indice e abilita le sostituzioni dei caratteri: ```java import com.groupdocs.search.Index; @@ -82,9 +145,11 @@ Index index = new Index(indexFolder, settings); ## Guida all'Implementazione ### Abilitare la Sostituzione dei Caratteri nelle Impostazioni dell'Indice -Attivare questa funzionalità indica al motore di sostituire i caratteri durante l'indicizzazione, passo fondamentale per il comportamento non sensibile al caso. +Attivare questa funzionalità indica al motore di sostituire i caratteri durante l'indicizzazione, che è il passaggio fondamentale per il comportamento case‑insensitive. #### Passo 1: Configurare `IndexSettings` +`IndexSettings` è l'oggetto di configurazione che controlla come l'indice memorizza e elabora il testo. Impostando `useCharacterReplacements` su **true**, attivi la conversione automatica in minuscolo (o qualsiasi mappatura personalizzata tu fornisca). + ```java import com.groupdocs.search.Index; import com.groupdocs.search.IndexSettings; @@ -102,7 +167,9 @@ Index index = new Index(indexFolder, settings); ### Configurare le Sostituzioni dei Caratteri Mappa ogni carattere al suo equivalente minuscolo (o a qualsiasi mappatura personalizzata necessaria). -#### Passo 2: Definire e Aggiungere le Coppie di Sostituzione +#### Passo 2: Definire e Aggiungere Coppie di Sostituzione +Il dizionario di sostituzione contiene coppie come `'A' → 'a'`, `'É' → 'e'`, ecc. Aggiungere queste coppie prima dell'indicizzazione garantisce che ogni token sia normalizzato. + ```java import com.groupdocs.search.dictionaries.CharacterReplacementPair; @@ -121,10 +188,12 @@ for (int i = 0; i < characterReplacements.length; i++) { index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); ``` -### Indicizzare i Documenti -Ora che l'indice è pronto, puoi **aggiungere documenti all'indice** da qualsiasi cartella. +### Indicizzare Documenti +Ora che l'indice è pronto, puoi **add documents to index** da qualsiasi cartella. #### Passo 3: Aggiungere Documenti per l'Indicizzazione +GroupDocs.Search scansiona la directory di destinazione, estrae il testo da ogni tipo di file supportato, applica la mappa di sostituzione e scrive i token nello storage dell'indice. + ```java import com.groupdocs.search.Index; @@ -135,9 +204,12 @@ Index index = new Index(indexFolder, settings); index.add(documentFolder); ``` -### Eseguire Ricer caso, puoi attivare questa opzione per richiesta. +### Eseguire una Ricerca Case‑Sensitive (Opzionale) + +#### Passo 4: Eseguire Ricerche Case‑Sensitive +`SearchOptions` configura il comportamento della query, ad esempio attivando/disattivando la sensibilità al maiuscolo, consentendo un controllo fine su come vengono eseguite le ricerche. +`SearchOptions.setUseCaseSensitiveSearch(true)` forza il motore a trattare i caratteri maiuscoli e minuscoli come distinti durante una query specifica, sovrascrivendo il comportamento predefinito case‑insensitive. -#### Passo 4: Eseguire Ricerche Sensibili al Caso ```java import com.groupdocs.search.Index; import com.groupdocs.search.SearchOptions; @@ -153,47 +225,60 @@ SearchResult result = index.search(query, options); ``` ## Applicazioni Pratiche -1. **Campagne di Marketing** – Normalizza i nomi dei prodotti affinché i team di vendita possano trovare le risorse senza preoccuparsi del caso. -2. **Assistenza Clienti** – Alimenta le caselle di ricerca del help‑desk che restituiscono l'articolo corretto sia che l'utente digiti “login” o “Login”. -3. **Cataloghi E‑commerce** – Garantenti trovino gli articoli indipazioni sulle Prestazioni -- **Organizzare i File Sorgente** – Una gerarchia di cartelle ordinata velocizza il passo **aggiungere documenti all'indice**. -- **Monitorare la Memoria** – Corpora di grandi dimensioni possono consumare molta RAM; considera l'indicizzazione incrementale o il processamento a batch. -- **Indicizzazione Asincrona** – Se la tua versione di GroupDocs.Search lo supporta, esegui l'indicizzazione in un thread di background per mantenere l'interfaccia reattiva. +1. **Marketing Campaigns** – Normalizza i nomi dei prodotti affinché i team di vendita possano trovare le risorse senza preoccuparsi delle maiuscole. +2. **Customer Support** – Alimenta le caselle di ricerca del help‑desk che restituiscono l'articolo corretto sia che l'utente digiti “login” o “Login”. +3. **E‑commerce Catalogs** – Garantisce che gli acquirenti trovino gli articoli indipendentemente da come digitano i titoli dei prodotti, migliorando i tassi di conversione. + +## Considerazioni sulle Prestazioni +- **Organize Source Files** – Una gerarchia di cartelle ordinata riduce il tempo di scansione durante il passaggio **add documents to index**. +- **Monitor Memory** – Indicizzare grandi corpora può consumare molta RAM; elaborare i file in batch da 500 – 1 000 elementi mantiene l'uso dell'heap sotto controllo. +- **Asynchronous Indexing** – Quando supportato, esegui l'indicizzazione su un thread in background per mantenere l'interfaccia reattiva ed evitare di bloccare le operazioni dell'utente. ## Problemi Comuni e Risoluzione -| Sintomo | Causa Probabile | Soluzione | -|---------|-----------------|-----------| -| Nessun risultato restituito per un termine noto | Sostituzioni dei caratteri non abilitate | Verifica `settings.setUseCharacterReplacements(true)` e che le sostituzioni siano state aggiunte. | -| Errore di out‑of‑memory durante l'indicizzazione | Indicizzazione di troppi file di grandi dimensioni contemporaneamente | Indicizza in batch più piccoli o aumenta l'heap JVM (`-Xmx`). | -| La ricerca restituisce risultati sensibili al caso in modo inatteso | È stato impostato `SearchOptions.setUseCaseSensitiveSearch(true)` | Rimuovi o imposta a `false` per il comportamento predefinito non sensibile al caso. | + +| Sintomo | Causa Probabile | Risoluzione | +|---------|-----------------|-------------| +| Nessun risultato restituito per un termine noto | Sostituzioni dei caratteri non abilitate | Verifica `settings.setUseCharacterReplacements(true)` e che la mappa di sostituzione contenga i caratteri necessari. | +| Errore Out‑of‑memory durante l'indicizzazione | Indicizzazione di troppi file grandi contemporaneamente | Indicizza in batch più piccoli o aumenta l'heap JVM (`-Xmx4g`). | +| La ricerca restituisce risultati case‑sensitive inaspettatamente | `SearchOptions.setUseCaseSensitiveSearch(true)` era impostato | Rimuovi o imposta a `false` per il comportamento predefinito case‑insensitive. | +| Il tempo di caricamento dell'indice supera le aspettative | Struttura delle cartelle inefficiente o SSD non utilizzato | Riorganizza i file, elimina i documenti inutilizzati e memorizza l'indice su un SSD veloce. | +| I caratteri speciali vengono ignorati | Mappa di sostituzione priva di voci Unicode | Aggiungi mappature per caratteri come “é”, “ß”, “ø” ai loro equivalenti desiderati. | ## Domande Frequenti -**D: Come gestisco i caratteri speciali (ad es. “é”, “ß”) durante l'indicizzazione?** -R: Includi quei caratteri nella tua mappa di sostituzione. Puoi mappare a equivalenti ASCII o mantenerli invariati, a seconda dei requisiti di ricerca. +**Q: Come gestisco i caratteri speciali (ad esempio “é”, “ß”) durante l'indicizzazione?** +A: Includi quei caratteri nella tua mappa di sostituzione, mappandoli ai loro equivalenti ASCII o lasciandoli invariati in base ai requisiti di ricerca. -**D: Posso limitare la sostituzione dei caratteri a una lingua specifica?** -R: Sì. Crea un array di sostituzione personalizzato che contenga solo i caratteri della lingua target prima di aggiungerlo al dizionario. +**Q: Posso limitare la sostituzione dei caratteri a una lingua specifica?** +A: Sì. Crea un array di sostituzione personalizzato che contenga solo i caratteri della lingua target prima di aggiungerlo al dizionario. -**D: Cosa fare se l'indice impiega molto tempo a caricarsi?** -R: Ottimizza la struttura delle cartelle, rimuovi i file non necessari e considera di persistere l'indice su un SSD veloce. +**Q: Cosa devo fare se l'indice impiega molto tempo a caricarsi?** +A: Ottimizza la struttura delle cartelle, rimuovi i file non necessari e memorizza l'indice su un SSD ad alta velocità. L'indicizzazione incrementale riduce anche il carico di caricamento. -**D: È possibile annullare le sostituzioni dei caratteri dopo l'indicizzazione?** -R: No. Le sostituzioni sono incorporate nei dati indicizzati; è necessario ricostruire l'indice con nuove impostazioni per modificarle. +**Q: È possibile annullare le sostituzioni dei caratteri dopo l'indicizzazione?** +A: No. Le sostituzioni sono incorporate nei dati indicizzati; è necessario ricostruire l'indice con nuove impostazioni per modificarle. -**D: Dove posso trovare una documentazione API più dettagliata?** -R: La documentazione ufficiale e il riferimento API forniscono dettagli esaustivi (vedi Risorse sotto). +**Q: Dove posso trovare una documentazione API più dettagliata?** +A: La documentazione ufficiale e il riferimento API forniscono dettagli esaustivi (vedi Risorse sotto). ## Risorse -- [Documentation](https://docs.groupdocs.com/search/java/) -- [API Reference](https://reference.groupdocs.com/search/java) +- [Documentazione](https://docs.groupdocs.com/search/java/) +- [Riferimento API](https://reference.groupdocs.com/search/java) - [Download GroupDocs.Search](https://releases.groupdocs.com/search/java/) -- [GitHub Repository](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) -- [Free Support Forum](https://forum.groupdocs.com/c/search/10) -- [Temporary License Information](https://purchase.groupdocs.com/temporary-license/) +- [Repository GitHub](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [Forum di Supporto Gratuito](https://forum.groupdocs.com/c/search/10) +- [Informazioni sulla Licenza Temporanea](https://purchase.groupdocs.com/temporary-license/) --- -**Ultimo Aggiornamento:** 2026-02-03 +**Ultimo Aggiornamento:** 2026-07-31 **Testato Con:** GroupDocs.Search 25.4 per Java -**Autore:** GroupDocs \ No newline at end of file +**Autore:** GroupDocs + +--- + +## Tutorial Correlati + +- [Sostituzione dei Caratteri in GroupDocs.Search Java: Guida Completa per Migliorare la Ricerca Testuale e l'Indicizzazione](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [Aggiungere documenti all'indice: ricerca Java case‑sensitive con GroupDocs](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [Come Aggiungere Documenti all'Indice con GroupDocs.Search per Java](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/italian/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/italian/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..ade43e0d6 --- /dev/null +++ b/content/italian/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,307 @@ +--- +date: '2026-07-31' +description: Scopri come creare un logging .NET robusto utilizzando GroupDocs, implementando + un logger console personalizzato e sfruttando il FileLogger integrato per un monitoraggio + efficace. +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: Scopri come creare un logging .NET robusto utilizzando GroupDocs, + implementando un logger console personalizzato e sfruttando il FileLogger integrato + per un monitoraggio efficace. +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: Crea un logging .NET robusto con GroupDocs Console Logger +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: Crea un logging .NET robusto con GroupDocs Console Logger +type: docs +url: /it/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# Crea un logging .NET robusto con GroupDocs Console Logger + +## Introduzione + +Stai facendo fatica a tenere traccia degli errori e delle operazioni di tracciamento nelle tue applicazioni .NET? **Create robust .NET logging** è essenziale per monitorare le prestazioni, fare il debug dei problemi e mantenere un funzionamento fluido. Questo tutorial ti guida nella creazione di un logger console personalizzato utilizzando GroupDocs.Search mostrando anche come integrare GroupDocs.Redaction per .NET. Alla fine, avrai una soluzione di logging trasparente e manutenibile che si integra perfettamente nel tuo codice esistente. + +## Risposte Rapide +- **Che cosa fa il logger personalizzato?** Scrive le voci di log direttamente sulla console per un feedback immediato durante lo sviluppo. +- **Quale componente GroupDocs fornisce il logging su file?** La classe integrata `FileLogger` gestisce i file di log persistenti. +- **Ho bisogno di una licenza?** Una licenza temporanea funziona per i test; è necessaria una licenza completa per la produzione. +- **Quali versioni .NET sono supportate?** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **La soluzione è thread‑safe?** Sì—sia `ConsoleLogger` sia `FileLogger` sono progettati per l'uso concorrente. + +## Che cos'è “create robust .NET logging”? +**Create robust .NET logging** significa stabilire una pipeline di logging affidabile e ad alte prestazioni che cattura errori, avvisi e messaggi informativi attraverso tutti i livelli di un'applicazione. Con GroupDocs, è possibile ottenere ciò utilizzando sia target console sia file mantenendo la configurazione semplice. + +## Perché usare GroupDocs per il logging .NET? +GroupDocs supporta **oltre 30 piattaforme .NET** e può elaborare documenti fino a **2 GB** senza un impatto di prestazioni evidente. Le sue API di logging sono leggere, thread‑safe e si integrano perfettamente con i pattern di gestione delle eccezioni esistenti, offrendoti una soluzione comprovata di livello enterprise. + +## Prerequisiti + +- **Librerie richieste e versioni:** GroupDocs.Search per .NET e GroupDocs.Redaction per .NET (ultime versioni compatibili). +- **Configurazione dell'ambiente:** Visual Studio 2022 o qualsiasi IDE compatibile con .NET. +- **Prerequisiti di conoscenza:** Familiarità con la sintassi C# e i concetti di base del logging. + +## Configurazione di GroupDocs.Redaction per .NET + +Per prima cosa, aggiungi GroupDocs.Redaction al tuo progetto. Scegli il metodo che meglio si adatta al tuo flusso di lavoro. + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +Cerca “GroupDocs.Redaction” e installa l'ultima versione. + +### Acquisizione della Licenza + +Per iniziare, puoi ottenere una licenza temporanea o acquistarne una completa. Questo ti consentirà di esplorare tutte le funzionalità senza limitazioni. Visita [GroupDocs' official site](https://purchase.groupdocs.com/temporary-license/) per ulteriori dettagli su come ottenere la tua licenza. + +### Inizializzazione e Configurazione di Base + +La classe `Redactor` fornisce API per modificare e redigere il contenuto nei documenti supportati. +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## Guida all'Implementazione + +### Come implementare un logger console personalizzato con GroupDocs? + +Carica il tuo logger personalizzato creando un'istanza di `ConsoleLogger` e passandola a `SearchOptions` o a qualsiasi componente GroupDocs che accetti un `ILogger`. Il logger scrive ogni messaggio su `Console.WriteLine`, fornendoti visibilità in tempo reale di ciò che la libreria sta facendo e aiutandoti a individuare rapidamente i problemi durante lo sviluppo. + +La classe `ConsoleLogger` implementa `ILogger` per scrivere i messaggi di log direttamente sulla console. +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Passo 1: Definisci il tuo Logger Personalizzato** +Crea una nuova classe chiamata `ConsoleLogger`: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Passo 2: Integra con GroupDocs.Search** + +`SearchOptions` configura il comportamento della ricerca e accetta un `ILogger` per il logging. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Che cos'è il FileLogger e quando usarlo? + +La classe `FileLogger` implementa `ILogger` e persiste le voci di log su un file su disco, rendendola ideale per ambienti di produzione dove sono richieste tracce di audit. La classe `FileLogger` fornita da GroupDocs scrive le voci di log su un file specificato su disco, rendendola perfetta per ambienti di produzione in cui è necessario mantenere tracce di audit persistenti. È possibile configurare la rotazione dei log, i limiti di dimensione del file e i livelli di log per soddisfare i requisiti operativi. + +La classe `FileLogger` implementa `ILogger` e persiste le voci di log su un file su disco. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Perché scegliere GroupDocs per il logging .NET? + +GroupDocs offre un vantaggio **quantificato**: supporta **oltre 50 formati di output** e può gestire **documenti di centinaia di pagine** senza caricare l'intero file in memoria. La sua infrastruttura di logging aggiunge meno di **2 ms** di overhead per voce di log, garantendo che le prestazioni rimangano ottimali anche sotto carico intenso. + +## Applicazioni Pratiche + +Ecco alcuni scenari pratici in cui queste tecniche di logging brillano: + +1. **Monitoraggio dell'applicazione:** Usa `ConsoleLogger` durante lo sviluppo per vedere diagnosi in tempo reale. +2. **Tracce di audit:** Distribuisci `FileLogger` per mantenere log di livello conformità per la segnalazione normativa. +3. **Debugging:** Sfrutta messaggi di traccia dettagliati per individuare i problemi in pipeline di ricerca complesse. +4. **Analisi delle prestazioni:** Esamina i timestamp dei log per identificare colli di bottiglia e ottimizzare l'uso delle risorse. + +## Considerazioni sulle Prestazioni + +Per mantenere il logging veloce ed efficiente: + +- **Limita la verbosità del log:** Imposta il livello del logger su `Info` o `Warning` in produzione per evitare I/O eccessivo. +- **Uso efficiente delle risorse:** Configura `FileLogger` con una dimensione massima del file di 10 MB e abilita il rollover automatico. +- **Gestione della memoria:** Dispone delle istanze del logger con blocchi `using` o chiamate esplicite a `Dispose()` per liberare rapidamente le risorse. + +## Domande Frequenti + +**Q: Posso usare il logger console personalizzato in un'applicazione multi‑thread?** +A: Sì—sia `ConsoleLogger` sia `FileLogger` sono thread‑safe, quindi puoi registrare log da task paralleli senza condizioni di gara. + +**Q: Ho bisogno di una licenza separata per GroupDocs.Search e GroupDocs.Redaction?** +A: Una singola licenza GroupDocs copre tutti i moduli, inclusi Search e Redaction, semplificando l'approvvigionamento. + +**Q: Come cambio la posizione del file di log per FileLogger?** +A: Imposta la proprietà `LogFilePath` durante la costruzione dell'istanza `FileLogger`, ad esempio `new FileLogger("C:\\Logs\\app.log")`. + +**Q: Quali livelli di log supporta GroupDocs?** +A: La libreria fornisce i livelli `Debug`, `Info`, `Warning`, `Error` e `Critical`, consentendo un controllo fine sull'output. + +**Q: È possibile combinare contemporaneamente sia il logging su console sia su file?** +A: Assolutamente—crea un logger composito che inoltra i messaggi sia a `ConsoleLogger` sia a `FileLogger` per una visibilità doppia. + +## Risorse + +- [Documentazione GroupDocs Redaction](https://docs.groupdocs.com/search/net/) +- [Riferimento API](https://reference.groupdocs.com/redaction/net) +- [Scarica le librerie GroupDocs](https://releases.groupdocs.com/search/net/) +- [Forum di supporto gratuito](https://forum.groupdocs.com/c/search/10) +- [Acquisizione licenza temporanea](https://purchase.groupdocs.com/temporary-license/) + +## Conclusione + +In questa guida, abbiamo mostrato come **create robust .NET logging** costruendo un logger console personalizzato e sfruttando il `FileLogger` integrato di GroupDocs. Questi strumenti ti offrono visibilità in tempo reale durante lo sviluppo e log affidabili e persistenti per la produzione. Esplora diverse configurazioni di livello di log, sperimenta con logger compositi e integra la soluzione in servizi più ampi per un'osservabilità full‑stack. + +**Prossimi Passi** + +- Testa diverse impostazioni di livello di log per trovare il punto ottimale tra dettaglio e prestazioni. +- Aggiungi logging strutturato (output JSON) a `FileLogger` per una più facile ingestione nelle piattaforme di analisi dei log. +- Esplora gli altri moduli di GroupDocs, come Search e Annotation, per estendere la tua pipeline di elaborazione documenti. + +--- + +**Ultimo aggiornamento:** 2026-07-31 +**Testato con:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**Autore:** GroupDocs + +--- + +## Tutorial Correlati + +- [Tutorial su Gestione delle Eccezioni e Logging per GroupDocs.Search .NET](/search/net/exception-handling-logging/) +- [Implementazione di GroupDocs.Search e Redaction in .NET per la Gestione dei Documenti](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [Padroneggiare GroupDocs Search e Redaction in .NET: Gestione Avanzata dei Documenti](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/japanese/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/japanese/java/searching/groupdocs-search-java-regex-tutorial/_index.md new file mode 100644 index 000000000..65c29264b --- /dev/null +++ b/content/japanese/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -0,0 +1,228 @@ +--- +date: '2026-07-31' +description: GroupDocs.Search を使用して Java で正規表現検索を行う方法を学びます。このステップバイステップのチュートリアルでは、セットアップ、インデックス作成、そして高速なテキスト文書分析のための正規表現クエリ例を紹介します。 +keywords: +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: GroupDocs.Search を使用した Java の正規表現検索は、PDF、Word、テキストファイル全体で高速なパターンマッチングを可能にします。このガイドに従ってセットアップ、文書のインデックス作成、強力な正規表現クエリの実行を行ってください。 +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: GroupDocs.Search ガイドで Java の正規表現検索を行う方法 +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: GroupDocs.Search ガイドで Java の正規表現検索を行う方法 +type: docs +url: /ja/java/searching/groupdocs-search-java-regex-tutorial/ +weight: 1 +--- + +# JavaでGroupDocs.Searchを使用した正規表現検索の方法 + +数千ものテキストドキュメントを検索することは、干し草の山から針を探すように感じられます。**Javaで正規表現検索**は、言語の強力な正規表現エンジンと、インデックスを構築して超高速パターンマッチングを実現するGroupDocs.Searchを組み合わせることで、簡単になります。数分でライブラリのインストール方法、インデックスの作成、ファイルの追加、シンプルなテキストベースとオブジェクト指向の正規表現クエリの実行方法を見ていきます。最後には、任意のJavaアプリケーションに堅牢なパターンマッチ検索を組み込む準備が整います。 + +## クイック回答 +- **主要なライブラリは何ですか?** GroupDocs.Search for Java +- **どうやって始めますか?** Add the Maven dependency and instantiate an `Index` object +- **正規表現でコンテンツをフィルタリングできますか?** Yes – use regex queries for content‑filtering scenarios +- **ライセンスは必要ですか?** A free trial or temporary license is required for production use +- **サポートされているJDKバージョンはどれですか?** Java 8 or higher + +## 正規表現検索とは? +正規表現検索を使用すると、日付、メールアドレス、繰り返し文字などのパターンを多数のファイルから単一の操作で特定できます。プレーンテキストのクエリを強力なルールベースのスキャナに変換し、コンテンツをリアルタイムで抽出またはブロックできます。 + +## 正規表現検索にGroupDocs.Searchを使用する理由 +GroupDocs.Searchはドキュメントを一度インデックス化し、そのインデックスをすべてのクエリで再利用するため、**最大10倍速い**検索を実現します。ライブラリは**30以上のファイル形式**(PDF、DOCX、XLSX、PPTX、TXT、HTML など)をサポートし、メモリに全ファイルをロードせずに数百ページのファイルも処理できます。 + +## 前提条件 +- Java Development Kit (JDK) 8 or higher +- Maven for dependency management +- Basic familiarity with Java regular expressions + +### 必要なライブラリと依存関係 +Add GroupDocs.Search to your Maven project: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +Alternatively, download the latest JAR from [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### ライセンス取得 +Obtain a free trial or temporary license from [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) and load it at application start‑up. + +## Java向けGroupDocs.Searchの設定 + +### インストール情報 +1. **Maven Integration:** Add the repository and dependency shown above to your `pom.xml`. +2. **Direct Download:** Place the JAR files on your project’s classpath. +3. **License Application:** Load the license file at application start‑up. + +```java +import com.groupdocs.search.*; + +public class SearchSetup { + public static void main(String[] args) { + // Initialize the index by specifying a directory. + String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; + Index index = new Index(indexFolder); + + System.out.println("Index created successfully at: " + indexFolder); + } +} +``` + +## コアコンポーネント +The `Index` class is the core component that stores searchable tokens extracted from your documents. It enables rapid lookup of any term or pattern without re‑reading the original files. + +## インデックスの作成方法 +Creating an index is straightforward: instantiate the `Index` class with a folder path where the index files will be stored. The constructor creates the necessary database files on first use and prepares the engine for adding and searching documents. Once created, reuse the same index for all queries. + +```java +String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; +Index index = new Index(indexFolder); +``` + +## ドキュメントの追加方法 +To make a file searchable, call `index.add` with a `Document` (or `DocumentInfo`) instance pointing to the file path. The library parses the content, extracts tokens, and stores them in the index. This operation can be performed for single files or batches, and updates are merged incrementally. + +```java +index.add("YOUR_DOCUMENT_DIRECTORY"); +system.out.println("Documents added to the index."); +``` + +## テキスト形式で正規表現検索を実行する方法 +`RegexQuery` defines a regular‑expression based search query. Load a `RegexQuery` with a plain‑text pattern and pass it to the `search` method of the `Index`. The engine evaluates the pattern against the indexed tokens and returns matching document references, making one‑off lookups fast and simple. + +```java +String query1 = "^((.)\\2{1,})"; +``` + +## オブジェクト形式で正規表現検索を実行する方法 +`RegexQuery` can also be built as an object and reused across multiple searches. Define the query once, configure options such as case‑insensitivity or fuzzy matching, and invoke `index.search` repeatedly. This approach improves performance when the same pattern is applied to many different document sets. + +```java +SearchResult result1 = index.search(query1); +system.out.println("Number of occurrences found: " + result1.getDocumentCount()); +``` + +## コンテンツフィルタリング正規表現のユースケース +You can employ regex to automatically block or flag content that matches certain patterns, such as: + +- Detecting repeated characters for spam filtering +- Finding credit‑card‑like sequences for data‑privacy checks +- Extracting dates or IDs for downstream processing + +## 実用的な応用例 +1. **Document Management Systems:** Locate contracts, invoices, or policies by pattern (e.g., invoice numbers). +2. **Content Moderation:** Apply regex rules to moderate user‑generated text in forums or chat apps. +3. **Data Extraction:** Pull structured data like order numbers from unstructured PDFs or Word files. + +## パフォーマンス上の考慮点 +- **Index Updates:** Call `index.add` whenever source files change to keep results fresh. +- **Memory Management:** For corpora exceeding 1 million documents, enable incremental indexing to keep heap usage under control. +- **Regex Design:** Keep patterns concise; a pattern like `\d{4}-\d{2}-\d{2}` runs 3× faster than a wildcard‑heavy expression such as `.*`. + +## 結論 +You now know **how to regex search** in Java using GroupDocs.Search, from installing the library and creating an index to executing both text‑based and object‑oriented queries. These techniques let you add fast, pattern‑aware search to any Java application, whether you’re building a document portal, a compliance scanner, or a data‑mining pipeline. + +## よくある質問 + +**Q:** What is the difference between text‑based and object‑based regex queries in GroupDocs.Search? +**A:** Text‑based queries are quick one‑liners, while object‑based queries provide reusable, type‑safe definitions that can be stored and reused across multiple searches. + +**Q:** Can GroupDocs.Search index non‑text documents such as PDFs or Excel files? +**A:** Yes, the library extracts searchable text from PDFs, DOCX, XLSX, PPTX, and over 30 other formats. + +**Q:** How do I update an existing search index after adding new files? +**A:** Call `index.add` with the new or modified documents; the library will merge changes without rebuilding the whole index. + +**Q:** What are common pitfalls when using regex with GroupDocs.Search? +**A:** Overly broad patterns (e.g., `.*`) can cause performance degradation, and malformed expressions may return no results. Always test patterns on a sample set first. + +**Q:** Where can I find more advanced GroupDocs.Search tutorials? +**A:** Visit the [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) for deep‑dive guides, API references, and sample projects. + +**最終更新日:** 2026-07-31 +**テスト環境:** GroupDocs.Search 25.4 +**作者:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## 関連チュートリアル + +- [Master GroupDocs.Search Java: 効率的なドキュメント検索とインデックス管理](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [Mastering GroupDocs.Search Java: 曖昧検索とドキュメントインデックスガイド](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [How to Index Text in Java with GroupDocs.Search Guide](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/japanese/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/japanese/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..81d644c39 --- /dev/null +++ b/content/japanese/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,278 @@ +--- +date: '2026-07-31' +description: GroupDocs.Search を使用してインデックスにドキュメントを追加し、文字置換でテキストを正規化することで、case insensitive + search java を実装する方法を学びます。 +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: Case insensitive search java を使用すると、インデックスにドキュメントを追加し、文字ケースを気にせずにクエリを実行できます。このガイドでは、GroupDocs.Search + がインデックス作成時にテキストを正規化し、迅速で信頼性の高い結果を得る方法を示します。 +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Case Insensitive Search Java – GroupDocsでドキュメントをインデックス +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: JavaでCase‑Insensitive Searchのためにインデックスにドキュメントを追加 +type: docs +url: /ja/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# インデックスにドキュメントを追加して大文字小文字を区別しない検索を行う(Java) + +When you need **case insensitive search java** that reliably finds information regardless of how users type it, the key is to add documents to an index while normalizing the text. In this tutorial we walk through configuring GroupDocs.Search for Java so that every document you index is automatically lower‑cased (or otherwise transformed) during indexing, guaranteeing case‑insensitive results without extra query‑time logic. + +## クイック回答 +- **“add documents to index” の意味は何ですか?** It means loading source files into a searchable data structure so they can be queried later. +- **Why use character replacement?** It normalizes every character—typically to lower‑case—so searches ignore case differences automatically. +- **Do I need a license?** A free trial works for development; a full license is required for production deployments. +- **Which Java version is required?** Java 8 or newer; the library targets Java 11+ for optimal performance. +- **Can I switch to case‑sensitive search when needed?** Yes—search options let you toggle case‑sensitivity per query. + +## GroupDocs.Search における “add documents to index” とは何ですか? + +Load your source files (PDF, DOCX, TXT, etc.) into a searchable index so the engine can retrieve them quickly. Adding documents to an index parses each file, extracts plain text, and stores it in an optimized data structure that enables fast look‑ups. + +## インデックス作成時に文字置換を有効にする理由 + +Character replacement converts each character to a predefined equivalent—most commonly lower‑case—while the index is built. This ensures that variations in capitalization, diacritics, or locale‑specific symbols do not affect search results. By normalizing text at indexing time, the engine can match queries against a consistent token set, providing fast, reliable case‑insensitive behavior without additional processing during each search. + +## 前提条件 +- **GroupDocs.Search for Java** version 25.4 or newer (the library supports 30+ file formats and can index multi‑hundred‑page documents without loading the whole file into memory). +- **Java Development Kit (JDK)** 8 or later installed. +- Basic familiarity with **Maven** (or ability to add JARs manually). + +## GroupDocs.Search for Java の設定 + +### Maven 設定 +Add the GroupDocs repository and dependency to your `pom.xml`: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### 直接ダウンロード +If you prefer not to use Maven, grab the latest JAR from the official site: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### ライセンス取得 +- **Free Trial** – download a trial license to start experimenting. +- **Temporary License** – request an extended testing license from the GroupDocs portal. +- **Full License** – purchase a production license when you’re ready to go live. + +### 基本初期化(インデックス作成) +The following snippet creates an index folder and enables character replacements: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## 実装ガイド + +### インデックス設定で文字置換を有効にする +Activating this feature tells the engine to replace characters while indexing, which is the core step for case‑insensitive behavior. + +#### 手順 1: `IndexSettings` の設定 +`IndexSettings` is the configuration object that controls how the index stores and processes text. By setting `useCharacterReplacements` to **true**, you turn on automatic lower‑casing (or any custom mapping you provide). + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### 文字置換の設定 +Map each character to its lower‑case counterpart (or any custom mapping you need). + +#### 手順 2: 置換ペアの定義と追加 +The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, etc. Adding these pairs before indexing ensures every token is normalized. + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### ドキュメントのインデックス作成 +Now that the index is ready, you can **add documents to index** from any folder. + +#### 手順 3: インデックス作成のためにドキュメントを追加 +GroupDocs.Search scans the target directory, extracts text from each supported file type, applies the replacement map, and writes the tokens to the index storage. + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### 大文字小文字を区別した検索の実行(オプション) + +#### 手順 4: 大文字小文字を区別した検索の実行 +`SearchOptions` configures query behavior, such as toggling case sensitivity, allowing fine‑grained control over how searches are performed. +`SearchOptions.setUseCaseSensitiveSearch(true)` forces the engine to treat upper‑ and lower‑case characters as distinct during a specific query, overriding the default case‑insensitive behavior. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## 実用的な活用例 +1. **Marketing Campaigns** – Normalize product names so sales teams can locate assets without worrying about case. +2. **Customer Support** – Power help‑desk search boxes that return the right article whether the user types “login” or “Login”. +3. **E‑commerce Catalogs** – Ensure shoppers find items regardless of how they type product titles, improving conversion rates. + +## パフォーマンス考慮事項 +- **Organize Source Files** – A tidy folder hierarchy reduces the time spent scanning during the **add documents to index** step. +- **Monitor Memory** – Indexing large corpora can consume significant RAM; processing files in batches of 500 – 1 000 items keeps heap usage under control. +- **Asynchronous Indexing** – When supported, run indexing on a background thread to keep the UI responsive and avoid blocking user operations. + +## よくある問題とトラブルシューティング +| 症状 | 考えられる原因 | 対策 | +|---------|--------------|-----| +| 既知の語句で結果が返らない | 文字置換が有効になっていない | `settings.setUseCharacterReplacements(true)` が設定され、置換マップに必要な文字が含まれていることを確認してください。 | +| インデックス作成中のメモリ不足エラー | 一度に大量の大きなファイルをインデックスしようとしている | 小さいバッチでインデックスするか、JVMヒープを増やす(`-Xmx4g`)。 | +| 検索が予期せず大文字小文字を区別した結果を返す | `SearchOptions.setUseCaseSensitiveSearch(true)` が設定されていた | デフォルトの大文字小文字を区別しない動作にするため、削除するか `false` に設定してください。 | +| インデックスのロード時間が予想を超える | フォルダ構成が非効率的、または SSD が使用されていない | ファイルを再整理し、未使用のドキュメントを削除し、インデックスを高速 SSD に保存してください。 | +| 特殊文字が無視される | 置換マップに Unicode エントリが欠如している | “é”、 “ß”、 “ø” などの文字に対するマッピングを追加してください。 | + +## よくある質問 + +**Q: インデックス作成時に特殊文字(例: “é”, “ß”)をどのように扱えばよいですか?** +A: それらの文字を置換マップに含め、ASCII 等価文字にマッピングするか、検索要件に応じて変更せずに保持します。 + +**Q: 文字置換を特定の言語に限定できますか?** +A: はい。対象言語の文字だけを含むカスタム置換配列を作成し、辞書に追加する前に使用します。 + +**Q: インデックスのロードに時間がかかる場合はどうすればよいですか?** +A: フォルダ構造を最適化し、不要なファイルを削除し、インデックスを高速 SSD に保存します。増分インデックス作成もロード負荷を軽減します。 + +**Q: インデックス作成後に文字置換を元に戻すことは可能ですか?** +A: できません。置換はインデックスデータに組み込まれるため、設定を変更して再構築する必要があります。 + +**Q: 詳細な API ドキュメントはどこで確認できますか?** +A: 公式ドキュメントと API リファレンスに詳しい情報があります(下記リソースをご参照ください)。 + +## リソース +- [ドキュメント](https://docs.groupdocs.com/search/java/) +- [API リファレンス](https://reference.groupdocs.com/search/java) +- [GroupDocs.Search のダウンロード](https://releases.groupdocs.com/search/java/) +- [GitHub リポジトリ](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [無料サポートフォーラム](https://forum.groupdocs.com/c/search/10) +- [一時ライセンス情報](https://purchase.groupdocs.com/temporary-license/) + +--- + +**最終更新日:** 2026-07-31 +**テスト済みバージョン:** GroupDocs.Search 25.4 for Java +**作者:** GroupDocs + +--- + +## 関連チュートリアル + +- [Character Replacement in GroupDocs.Search Java: A Comprehensive Guide to Enhance Text Search and Indexing](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [Add documents to index: case‑sensitive Java search with GroupDocs](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [How to Add Documents to Index with GroupDocs.Search for Java](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/japanese/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/japanese/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..2f4342fb8 --- /dev/null +++ b/content/japanese/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,299 @@ +--- +date: '2026-07-31' +description: GroupDocs を使用してカスタムコンソールロガーを実装し、組み込みの FileLogger を活用することで、効果的なモニタリングが可能な堅牢な + .NET ロギングの作り方を学びます。 +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: GroupDocs を使用してカスタムコンソールロガーを実装し、組み込みの FileLogger を活用することで、効果的なモニタリングが可能な堅牢な + .NET ロギングの作り方を学びます。 +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: GroupDocs Console Logger で堅牢な .NET ロギングを作成する +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: GroupDocs Console Logger で堅牢な .NET ロギングを作成する +type: docs +url: /ja/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# GroupDocs コンソールロガーで堅牢な .NET ロギングを作成する + +## はじめに + +.NET アプリケーションでエラーやトレース操作の追跡に苦労していますか? **Create robust .NET logging** は、パフォーマンスの監視、問題のデバッグ、スムーズな運用の維持に不可欠です。このチュートリアルでは、GroupDocs.Search を使用してカスタムコンソールロガーを構築する方法と、GroupDocs.Redaction for .NET の統合方法を示します。最後まで読むと、既存のコードベースにすぐに組み込める、透明で保守性の高いロギングソリューションが手に入ります。 + +## クイック回答 +- **カスタムロガーは何をしますか?** 開発中に即時フィードバックを得るため、ログエントリをコンソールに直接書き込みます。 +- **どの GroupDocs コンポーネントがファイルロギングを提供しますか?** 組み込みの `FileLogger` クラスが永続的なログファイルを処理します。 +- **ライセンスは必要ですか?** テスト用には一時ライセンスで動作しますが、本番環境ではフルライセンスが必要です。 +- **サポートされている .NET バージョンはどれですか?** .NET Framework 4.5+、.NET Core 3.1+、.NET 5/6/7。 +- **このソリューションはスレッドセーフですか?** はい—`ConsoleLogger` と `FileLogger` はどちらも同時使用を想定して設計されています。 + +## 「create robust .NET logging」とは何ですか? +**Create robust .NET logging** は、アプリケーションのすべての層でエラー、警告、情報メッセージを取得する信頼性の高い高性能ロギングパイプラインを構築することを意味します。GroupDocs を使用すれば、コンソールとファイルの両方のターゲットを利用し、設定をシンプルに保ちながら実現できます。 + +## なぜ .NET ロギングに GroupDocs を使用するのですか? +GroupDocs は **30 以上の .NET プラットフォーム** をサポートし、**2 GB** までのドキュメントをパフォーマンスへの顕著な影響なく処理できます。そのロギング API は軽量でスレッドセーフ、既存の例外処理パターンとシームレスに統合され、実績のあるエンタープライズグレードのソリューションを提供します。 + +## 前提条件 + +- **必要なライブラリとバージョン:** GroupDocs.Search for .NET と GroupDocs.Redaction for .NET(最新の互換リリース)。 +- **環境設定:** Visual Studio 2022 または任意の .NET 対応 IDE。 +- **知識の前提条件:** C# 構文と基本的なロギング概念に精通していること。 + +## GroupDocs.Redaction for .NET の設定 + +まず、プロジェクトに GroupDocs.Redaction を追加します。ワークフローに最適な方法を選択してください。 + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +「GroupDocs.Redaction」を検索し、最新バージョンをインストールします。 + +### ライセンス取得 + +まずは、一時ライセンスを取得するか、フルライセンスを購入してください。これにより、機能制限なしですべての機能を試すことができます。ライセンス取得の詳細は、[GroupDocs' official site](https://purchase.groupdocs.com/temporary-license/) をご覧ください。 + +### 基本的な初期化と設定 + +`Redactor` クラスは、サポートされているドキュメントのコンテンツを変更および編集するための API を提供します。 +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## 実装ガイド + +### GroupDocs でカスタムコンソールロガーを実装する方法 + +`ConsoleLogger` のインスタンスを作成し、`SearchOptions` や `ILogger` を受け取る任意の GroupDocs コンポーネントに渡すことで、カスタムロガーをロードします。ロガーは各メッセージを `Console.WriteLine` に書き込み、ライブラリの動作をリアルタイムで可視化し、開発中に問題をすばやく特定できるようにします。 + +`ConsoleLogger` クラスは `ILogger` を実装し、ログメッセージを直接コンソールに書き込みます。 +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**ステップ 1: カスタムロガーを定義する** +`ConsoleLogger` という名前の新しいクラスを作成します: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**ステップ 2: GroupDocs.Search と統合する** +`SearchOptions` は検索動作を構成し、ロギング用に `ILogger` を受け取ります。 +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### FileLogger とは何か、いつ使用すべきか + +`FileLogger` クラスは `ILogger` を実装し、ログエントリをディスク上のファイルに永続化します。監査トレイルが必要な本番環境に最適です。GroupDocs が提供する `FileLogger` クラスは、指定されたファイルにログエントリを書き込み、永続的な監査トレイルが必要な本番環境に最適です。ログローテーション、ファイルサイズ上限、ログレベルを運用要件に合わせて設定できます。 + +`FileLogger` クラスは `ILogger` を実装し、ログエントリをディスク上のファイルに永続化します。 +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### なぜ .NET ロギングに GroupDocs を選ぶのか + +GroupDocs は **定量的** な利点を提供します:**50 以上の出力フォーマット** をサポートし、**数百ページにわたるドキュメント** をメモリ全体にロードせずに処理できます。ロギングインフラはログエントリごとに **2 ms 未満** のオーバーヘッドしか追加せず、負荷が高い状況でもパフォーマンスが最適に保たれます。 + +## 実用的な適用例 + +これらのロギング手法が活躍する実用的なシナリオをいくつか紹介します: + +1. **アプリケーションモニタリング:** 開発中に `ConsoleLogger` を使用してリアルタイム診断を確認します。 +2. **監査トレイル:** `FileLogger` を導入し、規制報告用のコンプライアンスレベルのログを維持します。 +3. **デバッグ:** 詳細なトレースメッセージを活用して、複雑な検索パイプラインの問題を特定します。 +4. **パフォーマンス分析:** ログのタイムスタンプを調べ、ボトルネックを特定し、リソース使用を最適化します。 + +## パフォーマンス上の考慮点 + +ロギングを高速かつ効率的に保つために: + +- **ログの冗長性を制限する:** 本番環境ではロガーのレベルを `Info` または `Warning` に設定し、過剰な I/O を防ぎます。 +- **リソースの効率的な使用:** `FileLogger` を最大ファイルサイズ 10 MB に設定し、自動ロールオーバーを有効にします。 +- **メモリ管理:** `using` ブロックまたは明示的な `Dispose()` 呼び出しでロガーインスタンスを破棄し、リソースを速やかに解放します。 + +## よくある質問 + +**Q: カスタムコンソールロガーをマルチスレッドアプリケーションで使用できますか?** +A: はい—`ConsoleLogger` と `FileLogger` はどちらもスレッドセーフなので、レースコンディションなしで並列タスクからログを記録できます。 + +**Q: GroupDocs.Search と GroupDocs.Redaction に別々のライセンスが必要ですか?** +A: 1 つの GroupDocs ライセンスで Search と Redaction を含むすべてのモジュールがカバーされるため、調達が簡素化されます。 + +**Q: FileLogger のログファイルの場所を変更するにはどうすればよいですか?** +A: `FileLogger` インスタンスを作成する際に `LogFilePath` プロパティを設定します。例: `new FileLogger("C:\\Logs\\app.log")`。 + +**Q: GroupDocs がサポートするログレベルは何ですか?** +A: ライブラリは `Debug`、`Info`、`Warning`、`Error`、`Critical` のレベルを提供し、出力を細かく制御できます。 + +**Q: コンソールロギングとファイルロギングを同時に組み合わせることは可能ですか?** +A: もちろんです—`ConsoleLogger` と `FileLogger` の両方にメッセージを転送する複合ロガーを作成すれば、二重の可視性が得られます。 + +## リソース + +- [GroupDocs Redaction ドキュメント](https://docs.groupdocs.com/search/net/) +- [API リファレンス](https://reference.groupdocs.com/redaction/net) +- [GroupDocs ライブラリのダウンロード](https://releases.groupdocs.com/search/net/) +- [無料サポートフォーラム](https://forum.groupdocs.com/c/search/10) +- [一時ライセンス取得](https://purchase.groupdocs.com/temporary-license/) + +## 結論 + +このガイドでは、カスタムコンソールロガーを構築し、GroupDocs の組み込み `FileLogger` を活用することで **create robust .NET logging** を実現する方法を示しました。これらのツールは開発時にリアルタイムの可視性を提供し、本番環境では信頼性の高い永続ログを提供します。さまざまなログレベル設定を試し、複合ロガーで実験し、ソリューションを大規模サービスに統合してフルスタックの可観測性を実現してください。 + +**次のステップ** +- 詳細とパフォーマンスのバランスが取れた最適なログレベル設定をテストします。 +- `FileLogger` に構造化ロギング(JSON 出力)を追加し、ログ分析プラットフォームへの取り込みを容易にします。 +- Search や Annotation など、GroupDocs の他のモジュールを調査し、ドキュメント処理パイプラインを拡張します。 + +**最終更新日:** 2026-07-31 +**テスト環境:** GroupDocs.Search 23.11、GroupDocs.Redaction 23.11 for .NET +**作者:** GroupDocs + +## 関連チュートリアル + +- [GroupDocs.Search .NET の例外処理とロギングチュートリアル](/search/net/exception-handling-logging/) +- [ドキュメント管理のための .NET における GroupDocs.Search と Redaction の実装](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [GroupDocs Search と Redaction を .NET でマスターする:高度なドキュメント管理](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/korean/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/korean/java/searching/groupdocs-search-java-regex-tutorial/_index.md index d104c676a..b48213972 100644 --- a/content/korean/java/searching/groupdocs-search-java-regex-tutorial/_index.md +++ b/content/korean/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -1,42 +1,100 @@ --- -date: '2026-02-01' -description: Java에서 정규식 검색을 수행하는 방법과 GroupDocs.Search를 사용해 인덱스를 만드는 방법을 배워보세요. 이 튜토리얼은 - 설정, 인덱싱 및 정규식 검색에 대한 Java 예제를 다룹니다. +date: '2026-07-31' +description: GroupDocs.Search를 사용하여 Java에서 regex 검색하는 방법을 배웁니다. 이 단계별 튜토리얼에서는 setup, + index creation 및 빠른 텍스트 문서 분석을 위한 regex query 예제를 보여줍니다. keywords: -- regex searches -- GroupDocs.Search for Java -- Java text document analysis -title: 'Java에서 정규식 검색하는 방법: 텍스트 문서 분석을 위한 GroupDocs.Search 마스터하기' +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: GroupDocs.Search를 사용한 Java에서의 regex 검색은 PDFs, Word 및 텍스트 파일 전반에 걸쳐 + 빠른 pattern matching을 가능하게 합니다. 이 가이드를 따라 setup하고, 문서를 index하고, 강력한 regex queries를 + 실행하세요. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: Java에서 GroupDocs.Search를 이용한 Regex 검색 가이드 +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: Java에서 GroupDocs.Search를 이용한 Regex 검색 가이드 type: docs url: /ko/java/searching/groupdocs-search-java-regex-tutorial/ weight: 1 --- -#: 텍스트 문서 분석을 위한 GroupDocs.Search 마스터하기 +# Java에서 GroupDocs.Search를 사용한 정규식 검색 방법 -대용량 텍스트 문서를 효율적으로 검색하는 것은 어려울 **정규식 검색 방법**은 강칭 기능을 제공하는 라이브러리인 GroupDocs 이 가이드에서는 환경 설정, 인덱스 생성,규식 쿼리 실행 방법을 배웁니다. 끝까지 읽으면할 수 있는 탄탄 검색 튜토리얼**을 얻게 됩니다. +수천 개의 텍스트 문서를 검색하는 것은 건초 더미에서 바늘을 찾는 것과 같습니다. Java에서 **정규식 검색 방법**은 언어의 강력한 정규표현식 엔진을 GroupDocs.Search와 결합하면 손쉽게 수행할 수 있습니다. 이 라이브러리는 번개처럼 빠른 패턴 매칭을 위한 인덱스를 구축합니다. 다음 몇 분 안에 라이브러리 설치, 인덱스 생성, 파일 추가, 그리고 간단한 텍스트 기반 및 객체 지향 정규식 쿼리 실행 방법을 보여드립니다. 끝까지 읽으면 모든 Java 애플리케이션에 강력한 패턴 매칭 검색을 삽입할 준비가 됩니다. ## 빠른 답변 - **주요 라이브러리는 무엇인가요?** GroupDocs.Search for Java -- **시작 방법은?** Add the Maven dependency and initialize an `Index` object -- **정규식을 사용해 콘텐츠를 필 regex queries for content filtering regex scenarios -- **라이선스가 필요합니까?** A지원되는 JDK 버전은?** Java 8 or higher +- **어떻게 시작하나요?** Maven 의존성을 추가하고 `Index` 객체를 인스턴스화합니다 +- **정규식을 사용해 콘텐츠를 필터링할 수 있나요?** 예 – 콘텐츠 필터링 시나리오에 정규식 쿼리를 사용합니다 +- **라이선스가 필요합니까?** 프로덕션 사용을 위해 무료 체험 또는 임시 라이선스가 필요합니다 +- **지원되는 JDK 버전은 무엇인가요?** Java 8 or higher ## 정규식 검색이란? -정규식(Regex) 검색을 사용하면 날짜, 이메일 주소, 반복 문자와 같은 텍스트 패턴을 여러 문서에서 한 번에 찾아낼 수 있습니다. GroupDocs.Search는 이러한 패턴을 효율적인 쿼리로 컴파일하여 대용량 데이터 세트에서도 빠르게 실행됩니다. +정규식 검색을 사용하면 날짜, 이메일 주소, 반복 문자와 같은 패턴을 여러 파일에서 한 번에 찾을 수 있습니다. 일반 텍스트 쿼리를 강력한 규칙 기반 스캐너로 변환하여 실시간으로 콘텐츠를 추출하거나 차단할 수 있습니다. -## 왜 정규식 검색에 GroupDocs.Search를 사용하나요? -- **속도:** Index‑based searching avoids scanning raw files each time. -- **유연성:** Supports both simple text queries and complex object‑oriented queries. -- **광범위한 형식 지원:** Works with PDFs, Word, Excel, plain text, and more. +## 왜 정규식 검색에 GroupDocs.Search를 사용해야 할까요? +GroupDocs.Search는 문서를 한 번 인덱싱한 후 모든 쿼리에서 해당 인덱스를 재사용하여 원시 파일 스캔에 비해 **최대 10배 빠른** 검색을 제공합니다. 이 라이브러리는 **30개 이상의 파일 형식**(PDF, DOCX, XLSX, PPTX, TXT, HTML 등)을 지원하며 전체 파일을 메모리에 로드하지 않고도 수백 페이지 파일을 처리할 수 있습니다. -## 사전 요구 사항 -- Java Development Kit (JDK) 8 이상 -- 의존성 관리를 위한 Maven -- Java와 정규식에 대한 기본 지식 +## 필수 조건 +- Java Development Kit (JDK) 8 이상 +- 의존성 관리를 위한 Maven +- Java 정규식에 대한 기본 지식 -### 필수 라이브러리 및 의존성 -Maven을 통해 GroupDocs.Search를 포함합니다: +### 필요한 라이브러리 및 의존성 +Maven 프로젝트에 GroupDocs.Search를 추가합니다: ```xml @@ -59,14 +117,14 @@ Maven을 통해 GroupDocs.Search를 포함합니다: 또는 최신 JAR 파일을 [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/)에서 다운로드하십시오. ### 라이선스 획득 -[GroupDocs.License](https://purchase.groupdocs.com/temporary-license/)에서 무료 체험 또는 임시 라이선스를 획득하고 코드에 적용하십시오. +무료 체험 또는 임시 라이선스를 [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/)에서 획득하고 애플리케이션 시작 시 로드하십시오. ## Java용 GroupDocs.Search 설정 ### 설치 정보 -1. **Maven 통합:** Add the repository and dependency shown above to your `pom.xml`. -2. **직접 다운로드:** Place the JAR files on your project’s classpath. -3. **라이선스 적용:** Load the license file at application start‑up. +1. **Maven 통합:** 위에 표시된 저장소와 의존성을 `pom.xml`에 추가합니다. +2. **직접 다운로드:** JAR 파일을 프로젝트의 클래스패스에 배치합니다. +3. **라이선스 적용:** 애플리케이션 시작 시 라이선스 파일을 로드합니다. ```java import com.groupdocs.search.*; @@ -82,8 +140,11 @@ public class SearchSetup { } ``` +## 핵심 구성 요소 +`Index` 클래스는 문서에서 추출한 검색 가능한 토큰을 저장하는 핵심 구성 요소입니다. 원본 파일을 다시 읽지 않고도 모든 용어나 패턴을 빠르게 조회할 수 있게 합니다. + ## 인덱스 생성 방법 -인덱스를 생성하는 것은 빠른 검색을 위한 첫 번째 단계입니다. 인덱스는 문서에서 추출한 검색 가능한 토큰을 저장합니다. +인덱스 생성은 간단합니다: 인덱스 파일이 저장될 폴더 경로를 지정하여 `Index` 클래스를 인스턴스화합니다. 생성자는 첫 사용 시 필요한 데이터베이스 파일을 만들고 문서 추가 및 검색을 위한 엔진을 준비합니다. 생성 후에는 모든 쿼리에서 동일한 인덱스를 재사용합니다. ```java String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; @@ -91,76 +152,82 @@ Index index = new Index(indexFolder); ``` ## 문서 추가 방법 -인덱스 폴더가 생성된 후, 검색하려는 파일들을 해당 폴더에 채워 넣습니다. +파일을 검색 가능하게 만들려면 파일 경로를 가리키는 `Document`(또는 `DocumentInfo`) 인스턴스를 사용해 `index.add`를 호출합니다. 라이브러리는 콘텐츠를 파싱하고 토큰을 추출하여 인덱스에 저장합니다. 이 작업은 단일 파일이나 배치에 대해 수행할 수 있으며, 업데이트는 점진적으로 병합됩니다. ```java index.add("YOUR_DOCUMENT_DIRECTORY"); system.out.println("Documents added to the index."); ``` -## 텍스트 형태의 정규식 검색 -텍스트 기반 정규식 쿼리는 작성이 빠르고 일회성 검색에 적합합니다. +## 텍스트 형태로 정규식 검색 수행 방법 +`RegexQuery`는 정규식 기반 검색 쿼리를 정의합니다. 평문 패턴으로 `RegexQuery`를 로드하고 이를 `Index`의 `search` 메서드에 전달합니다. 엔진은 인덱스된 토큰에 대해 패턴을 평가하고 일치하는 문서 참조를 반환하여 일회성 조회를 빠르고 간단하게 만듭니다. ```java String query1 = "^((.)\\2{1,})"; ``` +## 객체 형태로 정규식 검색 수행 방법 +`RegexQuery`는 객체로도 구축할 수 있으며 여러 검색에서 재사용할 수 있습니다. 쿼리를 한 번 정의하고 대소문자 무시 또는 퍼지 매칭과 같은 옵션을 설정한 뒤 `index.search`를 반복 호출합니다. 동일한 패턴을 다양한 문서 집합에 적용할 때 이 접근 방식은 성능을 향상시킵니다. + ```java SearchResult result1 = index.search(query1); system.out.println("Number of occurrences found: " + result1.getDocumentCount()); ``` -## 객체 형태의 정규식 검색 -객체 지향 쿼리는 재사용 가능하고 타입 안전한 검색 정의를 제공합니다. - -```java -SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); -``` - -```java -SearchResult result2 = index.search(query2); -system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); -``` - ## 콘텐츠 필터링 정규식 사용 사례 -정규식을 사용하여 특정 패턴과 일치하는 콘텐츠를 자동으로 차단하거나 표시할 수 있습니다. 예시: +특정 패턴과 일치하는 콘텐츠를 자동으로 차단하거나 표시하기 위해 정규식을 사용할 수 있습니다: -- 스팸 필터링을 위한 반복 문자 감지 -- 데이터 프라이버시 검사를 위한 신용카드와 유사한 문자열 찾기 -- 후속 처리용 날짜 또는 ID 추출 +- 스팸 필터링을 위한 반복 문자 감지 +- 데이터 프라이버시 검사를 위한 신용카드와 유사한 시퀀스 찾기 +- 후속 처리용 날짜 또는 ID 추출 ## 실용적인 적용 사례 -1. **문서 관리 시스템:** Enable users to locate contracts, invoices, or policies by pattern. -2. **콘텐츠 필터링:** Apply content filtering regex rules to moderate user‑generated text. -3. **데이터 분석:** Pull out structured data (e.g., order numbers) from unstructured files. +1. **문서 관리 시스템:** 패턴(예: 청구서 번호)으로 계약서, 청구서 또는 정책을 찾습니다. +2. **콘텐츠 중재:** 포럼이나 채팅 앱에서 사용자 생성 텍스트를 중재하기 위해 정규식 규칙을 적용합니다. +3. **데이터 추출:** 비구조화된 PDF 또는 Word 파일에서 주문 번호와 같은 구조화된 데이터를 추출합니다. ## 성능 고려 사항 -- **인덱스 업데이트:** Re‑run `index.add` whenever source files change. -- **메모리 관리:** For massive corpora, monitor heap usage and consider incremental indexing. -- **정규식 설계:** Keep patterns concise; overly broad regexes can degrade speed. +- **인덱스 업데이트:** 소스 파일이 변경될 때마다 `index.add`를 호출하여 결과를 최신 상태로 유지합니다. +- **메모리 관리:** 100만 개 이상의 문서가 있는 경우 증분 인덱싱을 활성화하여 힙 사용량을 제어합니다. +- **정규식 설계:** 패턴을 간결하게 유지하십시오; `\d{4}-\d{2}-\d{2}`와 같은 패턴은 `.*`와 같은 와일드카드가 많은 표현식보다 3배 빠르게 실행됩니다. ## 결론 -이제 GroupDocs.Search를 사용하여 Java에서 **정규식 검색 방법**을 설정하고 인덱스를 생성하며 텍스트 기반 및 객체 기반 쿼리를 실행하는 방법을 알게 되었습니다. 이러한 기술을 활용하면 모든 Java 애플리케이션에서 빠르고 패턴을 인식하는 검색 기능을 구축할 수 있습니다. +이제 GroupDocs.Search를 사용하여 Java에서 **정규식 검색 방법**을 알고 있습니다. 라이브러리 설치와 인덱스 생성부터 텍스트 기반 및 객체 지향 쿼리 실행까지. 이 기술을 사용하면 문서 포털, 규정 준수 스캐너, 데이터 마이닝 파이프라인 등 어떤 Java 애플리케이션에도 빠르고 패턴 인식 검색을 추가할 수 있습니다. -## FAQ 섹션 +## 자주 묻는 질문 -**Q1: GroupDocs.Search에서 텍스트 기반과 객체 기반 정규식 쿼리의 차이점은 무엇인가요?** -A1: 텍스트 기반 쿼리는 더 간단하지만 유연성이 떨어지고, 객체 기반 쿼리는 관리와 재사용성이 뛰어납니다. +**Q:** 텍스트 기반과 객체 기반 정규식 쿼리의 차이점은 무엇인가요? +**A:** 텍스트 기반 쿼리는 빠른 한 줄 코드이며, 객체 기반 쿼리는 재사용 가능하고 타입 안전한 정의를 제공하여 여러 검색에 저장하고 재사용할 수 있습니다. -**Q2: GroupDocs.Search를 비텍스트 문서 인덱싱에 사용할 수 있나요?** -A2: 예, PDF, Word 파일, Excel 시트 등 다양한 형식을 지원합니다. +**Q:** GroupDocs.Search가 PDF나 Excel 파일과 같은 비텍스트 문서를 인덱싱할 수 있나요? +**A:** 예, 라이브러리는 PDF, DOCX, XLSX, PPTX 및 30개 이상의 다른 형식에서 검색 가능한 텍스트를 추출합니다. -**Q3: 기존 검색 인덱스를 어떻게 업데이트하나요?** -A3: 새롭거나 수정된 문서를 `index.add` 메서드에 전달하여 인덱스를 새로 고칩니다. +**Q:** 새 파일을 추가한 후 기존 검색 인덱스를 어떻게 업데이트하나요? +**A:** `index.add`를 새롭거나 수정된 문서와 함께 호출하면 라이브러리가 전체 인덱스를 재구축하지 않고 변경 사항을 병합합니다. -**Q4: GroupDocs.Search 사용 시 흔히 발생하는 문제는 무엇인가요?** -A4: 일반적인 문제로는 결과가 나오지 않는 잘못된 정규식 패턴과 대규모 인덱스에서 성능 저하가 있습니다. 패턴을 확인하고 인덱스를 최적화하십시오. +**Q:** GroupDocs.Search와 함께 정규식을 사용할 때 흔히 발생하는 함정은 무엇인가요? +**A:** 너무 넓은 패턴(예: `.*`)은 성능 저하를 일으킬 수 있으며, 잘못된 표현식은 결과를 반환하지 않을 수 있습니다. 항상 샘플 데이터에서 패턴을 테스트하십시오. -**Q5: GroupDocs.Search에 대한 고급 튜토리얼은 어디서 찾을 수 있나요?** -A5: 자세한 가이드와 예제는 [GroupDocs Documentation](https://docs.groupdocs.com/search/java/)을 참고하십시오. +**Q:** 보다 고급 GroupDocs.Search 튜토리얼은 어디서 찾을 수 있나요? +**A:** 깊이 있는 가이드, API 레퍼런스 및 샘플 프로젝트는 [GroupDocs Documentation](https://docs.groupdocs.com/search/java/)를 방문하십시오. --- -**마지막 업데이트:** 2026-02-01 -**테스트 환경:** GroupDocs.Search 25.4 -**작성자:** GroupDocs \ No newline at end of file +**마지막 업데이트:** 2026-07-31 +**테스트 대상:** GroupDocs.Search 25.4 +**작성자:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## 관련 튜토리얼 + +- [마스터 GroupDocs.Search Java: 효율적인 문서 검색 및 인덱스 관리](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [마스터링 GroupDocs.Search Java: 퍼지 검색 및 문서 인덱싱 가이드](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [Java에서 GroupDocs.Search로 텍스트 인덱싱 방법 가이드](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/korean/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/korean/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md index 1428d0535..2f9ba4249 100644 --- a/content/korean/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md +++ b/content/korean/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -1,41 +1,101 @@ --- -date: '2026-02-03' -description: GroupDocs.Search를 사용하여 Java에서 문서를 인덱스에 추가하고 인덱싱 중 문자 교체를 활용해 효율적인 대소문자 - 구분 없는 검색을 수행하는 방법을 배워보세요. +date: '2026-07-31' +description: GroupDocs.Search를 사용해 인덱스에 문서를 추가하고, character replacement를 이용해 인덱싱 중 + 텍스트를 normalize text함으로써 case insensitive search java를 구현하는 방법을 배웁니다. keywords: -- case-insensitive search in Java -- character replacement during indexing -- GroupDocs.Search setup -title: Java에서 대소문자 구분 없는 검색을 위해 문서를 인덱스에 추가하기 +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: Case insensitive search java를 사용하면 문서를 인덱스에 추가하고 대소문자를 신경 쓰지 않고 조회할 + 수 있습니다. 이 가이드는 GroupDocs.Search가 인덱싱 중 텍스트를 normalize text하여 빠르고 신뢰할 수 있는 결과를 제공하는 + 방법을 보여줍니다. +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Case Insensitive Search Java – GroupDocs와 함께 문서 인덱스 +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: Java에서 Case‑Insensitive Search를 위한 인덱스에 문서 추가 type: docs url: /ko/java/searching/master-case-insensitive-search-java-groupdocs-search/ weight: 1 --- -스에 정보를 for Java번 신뢰할 수 있는 대소문자 구분 없는 결과를 제공하는 방법을 단계별로 안내합니다. +# 대소문자 구분 없는 검색을 위한 Java에서 인덱스에 문서 추가 -## Quick Answers -- **“add documents to index”가 의미하는 것은?** 소스 파일을 검색 가능한 인덱스로 넣어 나중에 쿼리할 수 있게 하는 것을 의미합니다. -- **문자 교체를 사용하는 이유는?** 텍스트를 정규화(예: 모두 소문자로 변환)하여 검색 시 대소문자 차이를 무시하게 합니다. -- **라이선스가 필요합니까?** 개발 단계에서는 무료 체험판으로 충분하며, 운영 환경에서는 정식 라이선스가 필요합니다. -- **필요한 Java 버전은?** Java 8 이상; 최적 호환성을 위해 라이브러리는 Java 11+을 권장합니다. -- **필요에 따라 대소문자 구분 검색을 할 수 있나요?** 예—검색 옵션을 통해 쿼리별로 대소문자 구분 동작을 토글할 수 있습니다. +When you need **case insensitive search java** that reliably finds information regardless of how users type it, the key is to add documents to an index while normalizing the text. In this tutorial we walk through configuring GroupDocs.Search for Java so that every document you index is automatically lower‑cased (or otherwise transformed) during indexing, guaranteeing case‑insensitive results without extra query‑time logic. -## GroupDocs.Search에서 “add documents to index”란? -문서를 인덱스에 추가한다는 것은 파일(PDF, Word 문서, 일반 텍스트 등)을 GroupDocs.Search가 조회할 수 있는 데이터 구조에 로드하는 것을 의미합니다. 라이브러리는 각 파일을 파싱하고 검색 가능한 텍스트를 추출한 뒤, 빠르고 효율적인 조회가 가능하도록 저장합니다. +## 빠른 답변 +- **“add documents to index”가 무엇을 의미하나요?** 소스 파일을 검색 가능한 데이터 구조에 로드하여 나중에 쿼리할 수 있게 하는 것을 의미합니다. +- **문자 교체를 사용하는 이유는?** 모든 문자를 정규화(보통 소문자로)하여 검색 시 대소문자 차이를 자동으로 무시하도록 합니다. +- **라이선스가 필요합니까?** 무료 체험판은 개발에 사용할 수 있으며, 프로덕션 배포에는 정식 라이선스가 필요합니다. +- **필요한 Java 버전은?** Java 8 이상; 라이브러리는 최적 성능을 위해 Java 11+을 목표로 합니다. +- **필요할 때 대소문자 구분 검색으로 전환할 수 있나요?** 예—검색 옵션을 통해 쿼리별로 대소문자 구분을 토글할 수 있습니다. -## 인덱싱 중 문자 교체를 활성화하는 이유 -문자 교체는 인덱스를 구축하는 동안 모든 문자를 미리 정의된 동등 문자(보통 소문자)로 변환합니다. 이를 통해 **“Promotion”** 같은 쿼리가 **“promotion”**, **“PROMOTION”**, 혹은 혼합 대소문자 형태와도 별도 작업 없이 매치됩니다. +## GroupDocs.Search에서 “add documents to index”란 무엇인가요? +소스 파일(PDF, DOCX, TXT 등)을 검색 가능한 인덱스로 로드하여 엔진이 빠르게 검색할 수 있도록 합니다. 인덱스에 문서를 추가하면 각 파일을 파싱하고 순수 텍스트를 추출한 뒤, 빠른 조회를 가능하게 하는 최적화된 데이터 구조에 저장합니다. -## Prerequisites -- **GroupDocs.Search for Java** 버전 25.4 이상. +## 인덱싱 중 문자 교체를 활성화하는 이유는? +문자 교체는 인덱스를 구축하는 동안 각 문자를 미리 정의된 동등 문자(대부분 소문자)로 변환합니다. 이를 통해 대소문자, 악센트, 로케일별 기호의 변형이 검색 결과에 영향을 주지 않도록 보장합니다. 인덱싱 시 텍스트를 정규화함으로써 엔진은 일관된 토큰 집합에 대해 쿼리를 매칭할 수 있어, 각 검색 시 추가 처리를 하지 않아도 빠르고 신뢰할 수 있는 대소문자 구분 없는 동작을 제공합니다. + +## 사전 요구 사항 +- **GroupDocs.Search for Java** 버전 25.4 이상(이 라이브러리는 30개 이상의 파일 형식을 지원하며 전체 파일을 메모리에 로드하지 않고 수백 페이지 문서를 인덱싱할 수 있습니다). - **Java Development Kit (JDK)** 8 이상 설치. -- **Maven**에 대한 기본 지식(또는 JAR를 수동으로 추가할 수 있는 능력). +- **Maven**에 대한 기본적인 이해(또는 JAR를 수동으로 추가할 수 있는 능력). -## Setting Up GroupDocs.Search for Java +## GroupDocs.Search for Java 설정 -### Maven Setup -pom.xml`에 GroupDocs 저장소와 의존성을 추가합니다: +### Maven 설정 +`pom.xml`에 GroupDocs 저장소와 의존성을 추가합니다: ```xml @@ -55,15 +115,15 @@ pom.xml`에 GroupDocs 저장소와 의존성을 추가합니다: ``` -### Direct Download -Maven을 사용하지 않으려면 공식 사이트에서 최신 JAR를 다운로드하세요: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). +### 직접 다운로드 +Maven을 사용하고 싶지 않다면 공식 사이트에서 최신 JAR를 다운로드하세요: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). -### License Acquisition -- **Free Trial** – 체험용 라이선스를 다운로드하여 실험을 시작합니다. +### 라이선스 획득 +- **Free Trial** – 체험 라이선스를 다운로드하여 실험을 시작합니다. - **Temporary License** – GroupDocs 포털에서 연장 테스트 라이선스를 요청합니다. -- **Full License** – 운영 환경에 진입할 준비가 되면 정식 라이선스를 구매합니다. +- **Full License** – 실서비스를 시작할 준비가 되면 정식 라이선스를 구매합니다. -### Basic Initialization (Create the index) +### 기본 초기화 (인덱스 생성) 다음 스니펫은 인덱스 폴더를 생성하고 문자 교체를 활성화합니다: ```java @@ -76,10 +136,14 @@ settings.setUseCharacterReplacements(true); Index index = new Index(indexFolder, settings); ``` -## Implementation Guide +## 구현 가이드 + +### 인덱스 설정에서 문자 교체 활성화 +이 기능을 활성화하면 엔진이 인덱싱 중에 문자를 교체하도록 하며, 이는 대소문자 구분 없는 동작을 위한 핵심 단계입니다. + +#### 단계 1: `IndexSettings` 구성 +`IndexSettings`는 인덱스가 텍스트를 저장하고 처리하는 방식을 제어하는 구성 객체입니다. `useCharacterReplacements`를 **true**로 설정하면 자동 소문자 변환(또는 제공하는 사용자 정의 매핑)을 활성화합니다. -### Enable Character Replacement in Index Settings -이 기능을 활성화하면 인며: Configure `IndexSettings` ```java import com.groupdocs.search.Index; import com.groupdocs.search.IndexSettings; @@ -94,10 +158,12 @@ settings.setUseCharacterReplacements(true); Index index = new Index(indexFolder, settings); ``` -### Configure Character Replacements -각 문자를 소문자 대응 문자(또는 필요에 따라 사용자 정의 매핑)로 매핑합니다. +### 문자 교체 구성 +각 문자를 소문자 대응 문자(또는 필요한 사용자 정의 매핑)와 매핑합니다. + +#### 단계 2: 교체 쌍 정의 및 추가 +교체 사전은 `'A' → 'a'`, `'É' → 'e'`와 같은 쌍을 보관합니다. 인덱싱 전에 이러한 쌍을 추가하면 모든 토큰이 정규화됩니다. -#### Step 2: Define and Add Replacement Pairs ```java import com.groupdocs.search.dictionaries.CharacterReplacementPair; @@ -116,10 +182,12 @@ for (int i = 0; i < characterReplacements.length; i++) { index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); ``` -### Indexing Documents -인덱스가 준비되었으니 이제 **add documents to index**를 통해任意 폴더의 파일을 추가할 수 있습니다. +### 문서 인덱싱 +이제 인덱스가 준비되었으므로, 어떤 폴더에서든 **add documents to index**를 수행할 수 있습니다. + +#### 단계 3: 인덱싱을 위한 문서 추가 +GroupDocs.Search는 대상 디렉터리를 스캔하고, 지원되는 각 파일 유형에서 텍스트를 추출한 뒤, 교체 맵을 적용하고 토큰을 인덱스 저장소에 기록합니다. -#### Step 3: Add Documents for Indexing ```java import com.groupdocs.search.Index; @@ -130,10 +198,12 @@ Index index = new Index(indexFolder, settings); index.add(documentFolder); ``` -### Perform Case‑Sensitive Search (Optional) -특정 쿼리에서 대소문자를 구분해야 할 경우, 요청별로 토글할 수 있습니다. +### 대소문자 구분 검색 수행 (선택 사항) + +#### 단계 4: 대소문자 구분 검색 실행 +`SearchOptions`는 쿼리 동작을 구성하며, 예를 들어 대소문자 구분 토글을 통해 검색 수행 방식을 세밀하게 제어할 수 있습니다. +`SearchOptions.setUseCaseSensitiveSearch(true)`는 특정 쿼리에서 엔진이 대문자와 소문자를 구분하도록 강제하여 기본 대소문자 구분 없는 동작을 무시합니다. -#### Step 4: Execute Case‑Sensitive Searches ```java import com.groupdocs.search.Index; import com.groupdocs.search.SearchOptions; @@ -148,43 +218,58 @@ Index index = new Index(indexFolder, settings); SearchResult result = index.search(query, options); ``` -## Practical Applications -1. **Marketing Campaigns** – 제품명을 정규화하여 영업팀이 대소문자에 신경 쓰지 않고 자산을 찾을 수 있게 합니다. -2. **Customer Support** – 사용자가 “login”이나 “Login”을 입력해도 올바른 문서를 반환하는 헬프데스크 검색 박스를 구현합니다. -3. **E‑commerce Catalogs** – 쇼핑객이 제품 제목을 어떻게 입력하든 원하는 아이템을 찾을 수 있도록 보장합니다. +## 실용적인 적용 사례 +1. **Marketing Campaigns** – 제품명을 정규화하여 영업팀이 대소문자에 구애받지 않고 자산을 찾을 수 있도록 합니다. +2. **Customer Support** – 사용자가 “login” 또는 “Login”을 입력하더라도 올바른 문서를 반환하는 헬프데스크 검색 상자를 구현합니다. +3. **E‑commerce Catalogs** – 고객이 제품명을 어떻게 입력하든 항목을 찾을 수 있게 하여 전환율을 향상시킵니다. + +## 성능 고려 사항 +- **소스 파일 정리** – 깔끔한 폴더 구조는 **add documents to index** 단계에서 스캔 시간을 줄여줍니다. +- **메모리 모니터링** – 대규모 코퍼스를 인덱싱하면 많은 RAM을 사용할 수 있으므로, 파일을 500 – 1 000개씩 배치 처리하면 힙 사용량을 제어할 수 있습니다. +- **비동기 인덱싱** – 지원되는 경우 백그라운드 스레드에서 인덱싱을 실행하여 UI 응답성을 유지하고 사용자 작업을 차단하지 않도록 합니다. -## Performance Considerations -- **Organize Source Files** – 깔끔한 폴더 구조는 **add documents to index** 단계의 속도를 높입니다. -- **Monitor Memory** – 대용량 데이터는 많은 RAM 배- **Asynchronous드| Symptom | Likely Cause | Fix | +## 일반적인 문제 및 해결 방법 +| 증상 | 가능한 원인 | 해결 방법 | |---------|--------------|-----| -| 알려진 용어에 대해 결과가 반환되지 않음 | 문자 교체가 활성화되지 않음 | `settings.setUseCharacterReplacements(true)`와 교체 항목이 추가‑memory싱덱싱하거나 JVM 힙(`-Xmx`)을 늘림 | -| 검색 결과가 예상치 않게 대 해당 Asked Questions +| 알려진 용어에 대해 결과가 반환되지 않음 | 문자 교체가 활성화되지 않음 | `settings.setUseCharacterReplacements(true)`를 확인하고 교체 맵에 필요한 문자가 포함되어 있는지 확인합니다. | +| 인덱싱 중 메모리 부족 오류 | 한 번에 너무 많은 대용량 파일을 인덱싱 | 작은 배치로 인덱싱하거나 JVM 힙을 늘립니다(`-Xmx4g`). | +| 검색이 예상치 않게 대소문자 구분 결과를 반환 | `SearchOptions.setUseCaseSensitiveSearch(true)`가 설정됨 | `false`로 변경하거나 제거하여 기본 대소문자 구분 없는 동작을 사용합니다. | +| 인덱스 로드 시간이 기대보다 김 | 비효율적인 폴더 구조 또는 SSD 미사용 | 파일을 재구성하고 사용하지 않는 문서를 정리하며 인덱스를 빠른 SSD에 저장합니다. | +| 특수 문자가 무시됨 | 교체 맵에 유니코드 항목이 누락됨 | “é”, “ß”, “ø”와 같은 문자에 대한 매핑을 추가합니다. | + +## 자주 묻는 질문 -**Q: 인덱싱 중 특수 문자(예: “é”, “ß”)는 어떻게 처리하나요?** -A: 교체 맵에 해당 문자를 포함시킵니다. 검색 요구사항에 따라 ASCII 등가 문자로 매핑하거나 그대로 유지할 수 있습니다. +**Q: 인덱싱 중 특수 문자(예: “é”, “ß”)를 어떻게 처리하나요?** +A: 해당 문자를 교체 맵에 포함시켜 ASCII 동등 문자로 매핑하거나 검색 요구 사항에 따라 그대로 유지합니다. **Q: 문자 교체를 특정 언어에만 제한할 수 있나요?** -A: 예. 대상 언어에 해당하는 문자만 포함한 사용자 정의 교체 배열을 만든 뒤 사전에 추가하면 됩니다. +A: 예. 대상 언어에 해당하는 문자만 포함하는 사용자 정의 교체 배열을 만든 뒤 사전에 추가하면 됩니다. -**Q: 인덱스 로드 시간이 오래 걸리면 어떻게 해야 하나요?** -A: 폴더 구조를 최적화하고 불필요한 파일을 제거한 뒤, 빠른 SSD에 인덱스를 저장하는 것을 고려하세요. +**Q: 인덱스 로드에 오래 걸리면 어떻게 해야 하나요?** +A: 폴더 구조를 최적화하고 불필요한 파일을 제거하며 인덱스를 고속 SSD에 저장합니다. 증분 인덱싱도 로드 오버헤드를 줄여줍니다. **Q: 인덱싱 후에 문자 교체를 되돌릴 수 있나요?** -A: 아니요. 교체는 인덱스 데이터에 영구적으로 적용되므로, 설정을 바꾸려면 인덱스를 새로 빌드해야 합니다. +A: 아니요. 교체는 인덱스된 데이터에 고정되므로 설정을 변경하려면 인덱스를 다시 구축해야 합니다. **Q: 자세한 API 문서는 어디서 찾을 수 있나요?** -A: 공식 문서와 API 레퍼런스에 상세히 나와 있습니다(아래 Resources 참고). +A: 공식 문서와 API 레퍼런스에 상세한 내용이 모두 포함되어 있습니다(아래 리소스 참고). -## Resources -- [Documentation](https://docs.groupdocs.com/search/java/) -- [API Reference](https://reference.groupdocs.com/search/java) -- [Download GroupDocs.Search](https://releases.groupdocs.com/search/java/) -- [GitHub Repository](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) -- [Free Support Forum](https://forum.groupdocs.com/c/search/10) -- [Temporary License Information](https://purchase.groupdocs.com/temporary-license/) +## 리소스 +- [문서](https://docs.groupdocs.com/search/java/) +- [API 레퍼런스](https://reference.groupdocs.com/search/java) +- [GroupDocs.Search 다운로드](https://releases.groupdocs.com/search/java/) +- [GitHub 저장소](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [무료 지원 포럼](https://forum.groupdocs.com/c/search/10) +- [임시 라이선스 정보](https://purchase.groupdocs.com/temporary-license/) --- -**Last Updated:** 2026-02-03 -**Tested With:** GroupDocs.Search 25.4 for Java -**Author:** GroupDocs \ No newline at end of file +**마지막 업데이트:** 2026-07-31 +**테스트 환경:** GroupDocs.Search 25.4 for Java +**작성자:** GroupDocs + +## 관련 튜토리얼 + +- [GroupDocs.Search Java에서 문자 교체: 텍스트 검색 및 인덱싱 향상을 위한 종합 가이드](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [인덱스에 문서 추가: GroupDocs와 함께하는 대소문자 구분 Java 검색](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [GroupDocs.Search for Java로 인덱스에 문서 추가하는 방법](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/korean/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/korean/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..e493200b4 --- /dev/null +++ b/content/korean/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,303 @@ +--- +date: '2026-07-31' +description: 맞춤 console logger를 구현하고 내장된 FileLogger를 활용하여 효과적인 모니터링을 수행함으로써 GroupDocs를 + 사용해 견고한 .NET 로깅을 만드는 방법을 배웁니다. +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: 맞춤 console logger를 구현하고 내장된 FileLogger를 활용하여 효과적인 모니터링을 수행함으로써 GroupDocs를 + 사용해 견고한 .NET 로깅을 만드는 방법을 배웁니다. +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: GroupDocs Console Logger를 사용하여 견고한 .NET 로깅 만들기 +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: GroupDocs Console Logger를 사용하여 견고한 .NET 로깅 만들기 +type: docs +url: /ko/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# GroupDocs 콘솔 로거로 견고한 .NET 로깅 만들기 + +## 소개 + +.NET 애플리케이션에서 오류를 추적하고 작업을 기록하는 데 어려움을 겪고 계신가요? **Create robust .NET logging**은 성능 모니터링, 문제 디버깅 및 원활한 운영을 유지하는 데 필수적입니다. 이 튜토리얼에서는 GroupDocs.Search를 사용하여 사용자 정의 콘솔 로거를 구축하는 방법과 GroupDocs.Redaction for .NET을 통합하는 방법을 안내합니다. 끝까지 진행하면 기존 코드베이스에 바로 적용할 수 있는 투명하고 유지 관리가 쉬운 로깅 솔루션을 얻게 됩니다. + +## 빠른 답변 +- **사용자 정의 로거는 무엇을 하나요?** 개발 중 즉시 피드백을 제공하기 위해 로그 항목을 콘솔에 바로 기록합니다. +- **파일 로깅을 제공하는 GroupDocs 구성 요소는 무엇인가요?** 내장된 `FileLogger` 클래스가 영구 로그 파일을 처리합니다. +- **라이선스가 필요합니까?** 테스트용으로는 임시 라이선스로 충분하지만, 프로덕션에서는 정식 라이선스가 필요합니다. +- **지원되는 .NET 버전은 무엇인가요?** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **솔루션이 스레드 안전합니까?** 예—`ConsoleLogger`와 `FileLogger` 모두 동시 사용을 위해 설계되었습니다. + +## “create robust .NET logging”이란 무엇인가요? +**Create robust .NET logging**은 애플리케이션의 모든 계층에서 오류, 경고 및 정보 메시지를 포착하는 신뢰성 높고 고성능 로깅 파이프라인을 구축하는 것을 의미합니다. GroupDocs를 사용하면 콘솔과 파일 대상 모두를 활용하면서 구성도 간단하게 유지할 수 있습니다. + +## 왜 .NET 로깅에 GroupDocs를 사용하나요? +GroupDocs는 **30개 이상의 .NET 플랫폼**을 지원하며 **2 GB**까지의 문서를 눈에 띄는 성능 저하 없이 처리할 수 있습니다. 로깅 API는 가볍고 스레드 안전하며 기존 예외 처리 패턴과 원활하게 통합되어 검증된 엔터프라이즈급 솔루션을 제공합니다. + +## 전제 조건 + +- **필요한 라이브러리 및 버전:** GroupDocs.Search for .NET 및 GroupDocs.Redaction for .NET(최신 호환 릴리스). +- **환경 설정:** Visual Studio 2022 또는 .NET 호환 IDE. +- **지식 전제 조건:** C# 구문 및 기본 로깅 개념에 대한 이해. + +## GroupDocs.Redaction for .NET 설정 + +먼저, 프로젝트에 GroupDocs.Redaction을 추가합니다. 워크플로에 가장 적합한 방법을 선택하세요. + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**패키지 관리자** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +“GroupDocs.Redaction”을 검색하고 최신 버전을 설치합니다. + +### 라이선스 획득 + +시작하려면 임시 라이선스를 획득하거나 정식 라이선스를 구매할 수 있습니다. 이를 통해 제한 없이 모든 기능을 탐색할 수 있습니다. 라이선스 획득에 대한 자세한 내용은 [GroupDocs 공식 사이트](https://purchase.groupdocs.com/temporary-license/)를 방문하세요. + +### 기본 초기화 및 설정 + +`Redactor` 클래스는 지원되는 문서의 콘텐츠를 수정하고 가릴 수 있는 API를 제공합니다. +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## 구현 가이드 + +### GroupDocs로 사용자 정의 콘솔 로거를 구현하는 방법은? + +`ConsoleLogger` 인스턴스를 생성하고 이를 `SearchOptions` 또는 `ILogger`를 수용하는 모든 GroupDocs 구성 요소에 전달하여 사용자 정의 로거를 로드합니다. 로거는 각 메시지를 `Console.WriteLine`에 기록하여 라이브러리 동작을 실시간으로 확인할 수 있게 하며, 개발 중 문제를 빠르게 파악하는 데 도움을 줍니다. + +`ConsoleLogger` 클래스는 `ILogger`를 구현하여 로그 메시지를 콘솔에 직접 기록합니다. +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**단계 1: 사용자 정의 로거 정의** +`ConsoleLogger`라는 새 클래스를 생성합니다: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**단계 2: GroupDocs.Search와 통합** + +`SearchOptions`는 검색 동작을 구성하고 로깅을 위해 `ILogger`를 수용합니다. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### FileLogger란 무엇이며 언제 사용하나요? + +`FileLogger` 클래스는 `ILogger`를 구현하고 로그 항목을 디스크의 파일에 영구 저장하여 감사 로그가 필요한 프로덕션 환경에 이상적입니다. GroupDocs에서 제공하는 `FileLogger` 클래스는 지정된 파일에 로그를 기록하므로 지속적인 감사 로그가 필요한 프로덕션 환경에 적합합니다. 로그 회전, 파일 크기 제한 및 로그 레벨을 운영 요구에 맞게 구성할 수 있습니다. + +`FileLogger` 클래스는 `ILogger`를 구현하고 로그 항목을 디스크의 파일에 영구 저장합니다. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### 왜 .NET 로깅에 GroupDocs를 선택하나요? + +GroupDocs는 **정량화된** 이점을 제공합니다: **50개 이상의 출력 형식**을 지원하고 전체 파일을 메모리에 로드하지 않고도 **수백 페이지 문서**를 처리할 수 있습니다. 로깅 인프라는 로그 항목당 **2 ms** 미만의 오버헤드만 추가하여 높은 부하 상황에서도 성능이 최적화됩니다. + +## 실용적인 적용 사례 + +다음은 이러한 로깅 기법이 빛을 발하는 실용적인 시나리오입니다. + +1. **Application Monitoring:** `ConsoleLogger`를 개발 중에 사용하여 실시간 진단을 확인합니다. +2. **Audit Trails:** `FileLogger`를 배포하여 규제 보고를 위한 준수 수준 로그를 유지합니다. +3. **Debugging:** 상세 추적 메시지를 활용하여 복잡한 검색 파이프라인의 문제를 정확히 파악합니다. +4. **Performance Analysis:** 로그 타임스탬프를 검토하여 병목 현상을 식별하고 자원 사용을 최적화합니다. + +## 성능 고려 사항 + +로깅을 빠르고 효율적으로 유지하려면: + +- **Log Verbosity 제한:** 프로덕션에서는 로거 수준을 `Info` 또는 `Warning`으로 설정하여 과도한 I/O를 방지합니다. +- **효율적인 리소스 사용:** `FileLogger`를 최대 파일 크기 10 MB로 설정하고 자동 롤오버를 활성화합니다. +- **메모리 관리:** `using` 블록이나 명시적 `Dispose()` 호출로 로거 인스턴스를 즉시 해제하여 리소스를 확보합니다. + +## 자주 묻는 질문 + +**Q: 맞춤 콘솔 로거를 다중 스레드 애플리케이션에서 사용할 수 있나요?** +A: 예—`ConsoleLogger`와 `FileLogger` 모두 스레드 안전하므로 병렬 작업에서도 레이스 컨디션 없이 로그를 기록할 수 있습니다. + +**Q: GroupDocs.Search와 GroupDocs.Redaction에 별도의 라이선스가 필요합니까?** +A: 단일 GroupDocs 라이선스로 Search와 Redaction을 포함한 모든 모듈을 커버하므로 구매가 간소화됩니다. + +**Q: FileLogger의 로그 파일 위치를 어떻게 변경합니까?** +A: `FileLogger` 인스턴스를 생성할 때 `LogFilePath` 속성을 설정합니다. 예: `new FileLogger("C:\\Logs\\app.log")`. + +**Q: GroupDocs가 지원하는 로그 레벨은 무엇인가요?** +A: 라이브러리는 `Debug`, `Info`, `Warning`, `Error`, `Critical` 레벨을 제공하여 출력에 대한 세밀한 제어가 가능합니다. + +**Q: 콘솔 로깅과 파일 로깅을 동시에 결합할 수 있나요?** +A: 물론입니다—두 로거에 메시지를 전달하는 복합 로거를 만들어 콘솔과 파일 모두에서 로그를 확인할 수 있습니다. + +## 리소스 + +- [GroupDocs Redaction 문서](https://docs.groupdocs.com/search/net/) +- [API 참조](https://reference.groupdocs.com/redaction/net) +- [GroupDocs 라이브러리 다운로드](https://releases.groupdocs.com/search/net/) +- [무료 지원 포럼](https://forum.groupdocs.com/c/search/10) +- [임시 라이선스 획득](https://purchase.groupdocs.com/temporary-license/) + +## 결론 + +이 가이드에서는 맞춤 콘솔 로거를 구축하고 GroupDocs의 내장 `FileLogger`를 활용하여 **create robust .NET logging**을 구현하는 방법을 보여주었습니다. 이러한 도구를 통해 개발 중 실시간 인사이트를 얻고 프로덕션에서는 신뢰할 수 있는 영구 로그를 확보할 수 있습니다. 다양한 로그 레벨 구성을 탐색하고 복합 로거를 실험하며 솔루션을 더 큰 서비스에 통합하여 전체 스택 가시성을 확보해 보세요. + +**다음 단계** + +- 다양한 로그 레벨 설정을 테스트하여 상세함과 성능 사이의 최적점을 찾습니다. +- `FileLogger`에 구조화된 로깅(JSON 출력)을 추가하여 로그 분석 플랫폼으로의 수집을 용이하게 합니다. +- Search와 Annotation 등 GroupDocs의 다른 모듈을 탐색하여 문서 처리 파이프라인을 확장합니다. + +--- + +**마지막 업데이트:** 2026-07-31 +**테스트 환경:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**작성자:** GroupDocs + +## 관련 튜토리얼 + +- [GroupDocs.Search .NET용 예외 처리 및 로깅 튜토리얼](/search/net/exception-handling-logging/) +- [.NET에서 문서 관리를 위한 GroupDocs.Search 및 Redaction 구현](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [.NET에서 GroupDocs Search 및 Redaction 마스터하기: 고급 문서 관리](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/polish/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/polish/java/searching/groupdocs-search-java-regex-tutorial/_index.md new file mode 100644 index 000000000..384eb1bed --- /dev/null +++ b/content/polish/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -0,0 +1,233 @@ +--- +date: '2026-07-31' +description: Dowiedz się, jak wyszukiwać regex w Javie przy użyciu GroupDocs.Search. + Ten szczegółowy poradnik krok po kroku pokazuje konfigurację, tworzenie indeksu + oraz przykłady zapytań regex dla szybkiej analizy dokumentów tekstowych. +keywords: +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: Wyszukiwanie regex w Javie przy użyciu GroupDocs.Search umożliwia + szybkie dopasowywanie wzorców w plikach PDF, Word i tekstowych. Skorzystaj z tego + przewodnika, aby skonfigurować, zindeksować dokumenty i uruchomić potężne zapytania + regex. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: Jak wyszukiwać regex w Javie – przewodnik GroupDocs.Search +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: Jak wyszukiwać regex w Javie – przewodnik GroupDocs.Search +type: docs +url: /pl/java/searching/groupdocs-search-java-regex-tutorial/ +weight: 1 +--- + +# Jak wyszukiwać wyrażeniami regularnymi w Javie z GroupDocs.Search + +Wyszukiwanie wśród tysięcy dokumentów tekstowych może przypominać szukanie igły w stogu siana. **How to regex search** w Javie staje się bezwysiłkowe, gdy połączysz potężny silnik wyrażeń regularnych języka z GroupDocs.Search, biblioteką budującą indeks dla błyskawicznego dopasowywania wzorców. W ciągu kilku minut zobaczysz, jak zainstalować bibliotekę, utworzyć indeks, dodać pliki i uruchomić zarówno proste zapytania tekstowe, jak i obiektowo‑zorientowane zapytania regex. Po zakończeniu będziesz gotowy, aby wbudować solidne wyszukiwanie oparte na dopasowywaniu wzorców w dowolną aplikację Java. + +## Szybkie odpowiedzi +- **Jaka jest podstawowa biblioteka?** GroupDocs.Search for Java +- **Jak rozpocząć?** Add the Maven dependency and instantiate an `Index` object +- **Czy mogę filtrować zawartość przy użyciu regex?** Yes – use regex queries for content‑filtering scenarios +- **Czy potrzebna jest licencja?** A free trial or temporary license is required for production use +- **Która wersja JDK jest wspierana?** Java 8 or higher + +## Czym jest wyszukiwanie regex? +Wyszukiwanie regex pozwala zlokalizować wzorce, takie jak daty, adresy e‑mail czy powtarzające się znaki, w wielu plikach w jednej operacji. Przekształca ono zapytanie w zwykłym tekście w potężny skaner oparty na regułach, który może wyodrębniać lub blokować zawartość w locie. + +## Dlaczego używać GroupDocs.Search do wyszukiwania regex? +GroupDocs.Search indeksuje dokumenty raz, a następnie ponownie wykorzystuje ten indeks dla każdego zapytania, zapewniając **do 10× szybsze** wyszukiwania w porównaniu ze skanowaniem surowych plików. Biblioteka obsługuje **ponad 30 formatów plików** (PDF, DOCX, XLSX, PPTX, TXT, HTML i inne) i potrafi obsłużyć pliki wielostronicowe bez ładowania całego pliku do pamięci. + +## Wymagania wstępne +- Java Development Kit (JDK) 8 lub wyższy +- Maven do zarządzania zależnościami +- Podstawowa znajomość wyrażeń regularnych w Javie + +### Wymagane biblioteki i zależności +Add GroupDocs.Search to your Maven project: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +Alternatywnie, pobierz najnowszy plik JAR z [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Uzyskanie licencji +Uzyskaj bezpłatną wersję próbną lub tymczasową licencję z [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) i załaduj ją przy uruchamianiu aplikacji. + +## Konfiguracja GroupDocs.Search dla Java + +### Informacje o instalacji +1. **Maven Integration:** Dodaj repozytorium i zależność pokazane powyżej do swojego `pom.xml`. +2. **Direct Download:** Umieść pliki JAR na classpathie swojego projektu. +3. **License Application:** Załaduj plik licencji przy uruchamianiu aplikacji. + +```java +import com.groupdocs.search.*; + +public class SearchSetup { + public static void main(String[] args) { + // Initialize the index by specifying a directory. + String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; + Index index = new Index(indexFolder); + + System.out.println("Index created successfully at: " + indexFolder); + } +} +``` + +## Główne komponenty +Klasa `Index` jest głównym komponentem, który przechowuje przeszukiwalne tokeny wyodrębnione z Twoich dokumentów. Umożliwia szybkie wyszukiwanie dowolnego terminu lub wzorca bez ponownego odczytywania oryginalnych plików. + +## Jak utworzyć indeks +Tworzenie indeksu jest proste: zainstancjuj klasę `Index` z ścieżką folderu, w którym będą przechowywane pliki indeksu. Konstruktor tworzy niezbędne pliki bazy danych przy pierwszym użyciu i przygotowuje silnik do dodawania i przeszukiwania dokumentów. Po utworzeniu, używaj tego samego indeksu dla wszystkich zapytań. + +```java +String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; +Index index = new Index(indexFolder); +``` + +## Jak dodać dokumenty +Aby plik był przeszukiwalny, wywołaj `index.add` z instancją `Document` (lub `DocumentInfo`) wskazującą na ścieżkę pliku. Biblioteka analizuje zawartość, wyodrębnia tokeny i zapisuje je w indeksie. Operację tę można wykonać dla pojedynczych plików lub partii, a aktualizacje są łączone stopniowo. + +```java +index.add("YOUR_DOCUMENT_DIRECTORY"); +system.out.println("Documents added to the index."); +``` + +## Jak wykonać wyszukiwanie wyrażeniem regularnym w formie tekstowej +`RegexQuery` definiuje zapytanie wyszukiwania oparte na wyrażeniu regularnym. Załaduj `RegexQuery` z wzorcem w zwykłym tekście i przekaż go do metody `search` klasy `Index`. Silnik ocenia wzorzec względem tokenów w indeksie i zwraca odwołania do pasujących dokumentów, co sprawia, że jednorazowe wyszukiwania są szybkie i proste. + +```java +String query1 = "^((.)\\2{1,})"; +``` + +## Jak wykonać wyszukiwanie wyrażeniem regularnym w formie obiektowej +`RegexQuery` może być również zbudowany jako obiekt i ponownie używany w wielu wyszukiwaniach. Zdefiniuj zapytanie raz, skonfiguruj opcje takie jak ignorowanie wielkości liter lub dopasowanie przybliżone, i wielokrotnie wywołuj `index.search`. To podejście poprawia wydajność, gdy ten sam wzorzec jest stosowany do wielu różnych zestawów dokumentów. + +```java +SearchResult result1 = index.search(query1); +system.out.println("Number of occurrences found: " + result1.getDocumentCount()); +``` + +## Przypadki użycia regex do filtrowania treści +Możesz używać regex do automatycznego blokowania lub oznaczania treści, które pasują do określonych wzorców, takich jak: + +- Wykrywanie powtarzających się znaków w celu filtrowania spamu +- Znajdowanie sekwencji podobnych do numerów kart kredytowych w kontroli prywatności danych +- Wyodrębnianie dat lub identyfikatorów do dalszego przetwarzania + +## Praktyczne zastosowania +1. **Document Management Systems:** Lokalizuj umowy, faktury lub polityki za pomocą wzorca (np. numery faktur). +2. **Content Moderation:** Stosuj reguły regex do moderacji tekstu generowanego przez użytkowników na forach lub w aplikacjach czatu. +3. **Data Extraction:** Pobieraj dane strukturalne, takie jak numery zamówień, z nieustrukturyzowanych plików PDF lub Word. + +## Rozważania dotyczące wydajności +- **Index Updates:** Wywołuj `index.add` za każdym razem, gdy zmieniają się pliki źródłowe, aby utrzymać aktualność wyników. +- **Memory Management:** Dla korpusów przekraczających 1 milion dokumentów włącz indeksowanie przyrostowe, aby utrzymać zużycie pamięci pod kontrolą. +- **Regex Design:** Utrzymuj wzorce zwięzłe; wzorzec taki jak `\d{4}-\d{2}-\d{2}` działa 3× szybciej niż wyrażenie obciążone wieloma znakami wieloznacznymi, np. `.*`. + +## Zakończenie +Teraz wiesz, **jak wyszukiwać wyrażeniami regularnymi** w Javie przy użyciu GroupDocs.Search, od instalacji biblioteki i tworzenia indeksu po wykonywanie zarówno zapytań tekstowych, jak i obiektowo‑zorientowanych. Te techniki pozwalają dodać szybkie, oparte na wzorcach wyszukiwanie do dowolnej aplikacji Java, niezależnie od tego, czy tworzysz portal dokumentów, skaner zgodności, czy pipeline do eksploracji danych. + +## Najczęściej zadawane pytania + +**Q:** Jaka jest różnica między zapytaniami regex opartymi na tekście a zapytaniami opartymi na obiekcie w GroupDocs.Search? +**A:** Zapytania oparte na tekście są szybkimi jednowierszowymi zapytaniami, podczas gdy zapytania oparte na obiekcie zapewniają wielokrotnego użytku, typowo‑bezpieczne definicje, które mogą być przechowywane i ponownie używane w wielu wyszukiwaniach. + +**Q:** Czy GroupDocs.Search może indeksować dokumenty nientekstowe, takie jak PDF lub pliki Excel? +**A:** Tak, biblioteka wyodrębnia przeszukiwalny tekst z PDF, DOCX, XLSX, PPTX oraz ponad 30 innych formatów. + +**Q:** Jak zaktualizować istniejący indeks wyszukiwania po dodaniu nowych plików? +**A:** Wywołaj `index.add` z nowymi lub zmodyfikowanymi dokumentami; biblioteka połączy zmiany bez przebudowy całego indeksu. + +**Q:** Jakie są typowe pułapki przy używaniu regex z GroupDocs.Search? +**A:** Zbyt szerokie wzorce (np. `.*`) mogą powodować spadek wydajności, a niepoprawne wyrażenia mogą nie zwracać wyników. Zawsze najpierw testuj wzorce na próbce danych. + +**Q:** Gdzie mogę znaleźć bardziej zaawansowane samouczki GroupDocs.Search? +**A:** Odwiedź [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) po szczegółowe przewodniki, referencje API i przykładowe projekty. + +**Ostatnia aktualizacja:** 2026-07-31 +**Testowano z:** GroupDocs.Search 25.4 +**Autor:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## Powiązane samouczki + +- [Mistrz GroupDocs.Search Java: Efektywne wyszukiwanie dokumentów i zarządzanie indeksem](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [Mistrzostwo GroupDocs.Search Java: Wyszukiwanie przybliżone i przewodnik po indeksowaniu dokumentów](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [Jak indeksować tekst w Javie z przewodnikiem GroupDocs.Search](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/polish/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/polish/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..be4806dda --- /dev/null +++ b/content/polish/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,279 @@ +--- +date: '2026-07-31' +description: Dowiedz się, jak wdrożyć case insensitive search java, dodając dokumenty + do indeksu przy użyciu GroupDocs.Search oraz wykorzystując zamianę znaków do normalizacji + tekstu podczas indeksowania. +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: Case insensitive search java umożliwia dodawanie dokumentów do indeksu + i ich wyszukiwanie bez martwienia się o wielkość liter. Ten przewodnik pokazuje, + jak GroupDocs.Search normalizuje tekst podczas indeksowania, zapewniając szybkie + i niezawodne wyniki. +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Case Insensitive Search Java – indeksowanie dokumentów z GroupDocs +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: Dodaj dokumenty do indeksu dla wyszukiwania bez rozróżniania wielkości liter + w Javie +type: docs +url: /pl/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# Dodaj dokumenty do indeksu dla wyszukiwania bez uwzględniania wielkości liter w Javie + +Kiedy potrzebujesz **case insensitive search java**, które niezawodnie znajduje informacje niezależnie od tego, jak użytkownicy je wpisują, kluczem jest dodanie dokumentów do indeksu przy jednoczesnym normalizowaniu tekstu. W tym samouczku przeprowadzimy konfigurację GroupDocs.Search dla Javy, tak aby każdy dokument, który indeksujesz, był automatycznie zamieniany na małe litery (lub w inny sposób przetwarzany) podczas indeksowania, co zapewnia wyniki bez uwzględniania wielkości liter bez dodatkowej logiki w czasie zapytania. + +## Szybkie odpowiedzi +- **Co oznacza „add documents to index”?** Oznacza to ładowanie plików źródłowych do struktury danych umożliwiającej wyszukiwanie, tak aby można je było później zapytać. +- **Dlaczego używać zamiany znaków?** Normalizuje każdy znak — zazwyczaj do małych liter — tak aby wyszukiwania automatycznie ignorowały różnice w wielkości liter. +- **Czy potrzebna jest licencja?** Bezpłatna wersja próbna działa w środowisku deweloperskim; pełna licencja jest wymagana w wdrożeniach produkcyjnych. +- **Jaka wersja Javy jest wymagana?** Java 8 lub nowsza; biblioteka jest przeznaczona dla Java 11+ w celu uzyskania optymalnej wydajności. +- **Czy mogę przełączyć się na wyszukiwanie uwzględniające wielkość liter w razie potrzeby?** Tak — opcje wyszukiwania pozwalają przełączać uwzględnianie wielkości liter dla poszczególnych zapytań. + +## Co oznacza „add documents to index” w GroupDocs.Search? +Załaduj swoje pliki źródłowe (PDF, DOCX, TXT itp.) do indeksu umożliwiającego wyszukiwanie, aby silnik mógł je szybko odnaleźć. Dodawanie dokumentów do indeksu analizuje każdy plik, wyodrębnia zwykły tekst i przechowuje go w zoptymalizowanej strukturze danych, co umożliwia szybkie wyszukiwanie. + +## Dlaczego włączyć zamianę znaków podczas indeksowania? +Zamiana znaków konwertuje każdy znak na zdefiniowany wcześniej odpowiednik — najczęściej na małe litery — w trakcie budowania indeksu. Dzięki temu różnice w kapitalizacji, znakach diakrytycznych czy symbolach specyficznych dla lokalizacji nie wpływają na wyniki wyszukiwania. Normalizując tekst w czasie indeksowania, silnik może dopasowywać zapytania do spójnego zestawu tokenów, zapewniając szybkie, niezawodne zachowanie bez uwzględniania wielkości liter bez dodatkowego przetwarzania przy każdym wyszukiwaniu. + +## Wymagania wstępne +- **GroupDocs.Search for Java** wersja 25.4 lub nowsza (biblioteka obsługuje ponad 30 formatów plików i może indeksować dokumenty wielostronicowe bez ładowania całego pliku do pamięci). +- **Java Development Kit (JDK)** 8 lub nowszy zainstalowany. +- Podstawowa znajomość **Maven** (lub możliwość ręcznego dodania plików JAR). + +## Konfiguracja GroupDocs.Search dla Javy + +### Konfiguracja Maven +Dodaj repozytorium GroupDocs oraz zależność do pliku `pom.xml`: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### Bezpośrednie pobranie +Jeśli wolisz nie używać Maven, pobierz najnowszy plik JAR z oficjalnej strony: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Uzyskanie licencji +- **Free Trial** – pobierz licencję próbną, aby rozpocząć eksperymenty. +- **Temporary License** – poproś o przedłużoną licencję testową w portalu GroupDocs. +- **Full License** – zakup licencję produkcyjną, gdy będziesz gotowy do uruchomienia. + +### Podstawowa inicjalizacja (Utworzenie indeksu) +Poniższy fragment tworzy folder indeksu i włącza zamianę znaków: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## Przewodnik implementacji + +### Włączenie zamiany znaków w ustawieniach indeksu +Aktywacja tej funkcji instruuje silnik, aby zamieniał znaki podczas indeksowania, co jest kluczowym krokiem do zachowania bez uwzględniania wielkości liter. + +#### Krok 1: Skonfiguruj `IndexSettings` +`IndexSettings` jest obiektem konfiguracyjnym, który kontroluje sposób przechowywania i przetwarzania tekstu w indeksie. Ustawiając `useCharacterReplacements` na **true**, włączasz automatyczne zamienianie na małe litery (lub dowolne własne mapowanie). + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### Konfiguracja zamiany znaków +Mapuj każdy znak na jego odpowiednik w małych literach (lub dowolne własne mapowanie, które jest potrzebne). + +#### Krok 2: Zdefiniuj i dodaj pary zamiany +Słownik zamian przechowuje pary takie jak `'A' → 'a'`, `'É' → 'e'` itd. Dodanie tych par przed indeksowaniem zapewnia, że każdy token jest znormalizowany. + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### Indeksowanie dokumentów +Teraz, gdy indeks jest gotowy, możesz **add documents to index** z dowolnego folderu. + +#### Krok 3: Dodaj dokumenty do indeksowania +GroupDocs.Search skanuje docelowy katalog, wyodrębnia tekst z każdego obsługiwanego typu pliku, stosuje mapę zamian i zapisuje tokeny w magazynie indeksu. + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### Wykonaj wyszukiwanie uwzględniające wielkość liter (opcjonalnie) + +#### Krok 4: Wykonaj wyszukiwania uwzględniające wielkość liter +`SearchOptions` konfiguruje zachowanie zapytania, takie jak przełączanie uwzględniania wielkości liter, umożliwiając precyzyjną kontrolę nad sposobem wykonywania wyszukiwań. +`SearchOptions.setUseCaseSensitiveSearch(true)` wymusza, aby silnik traktował znaki wielkie i małe jako odrębne podczas konkretnego zapytania, nadpisując domyślne zachowanie bez uwzględniania wielkości liter. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## Praktyczne zastosowania +1. **Kampanie marketingowe** – Normalizuj nazwy produktów, aby zespoły sprzedaży mogły znaleźć zasoby bez martwienia się o wielkość liter. +2. **Obsługa klienta** – Zasilaj pola wyszukiwania w help desku, które zwracają właściwy artykuł, niezależnie od tego, czy użytkownik wpisze „login”, czy „Login”. +3. **Katalogi e‑commerce** – Zapewnij, że klienci znajdą produkty niezależnie od tego, jak wpisują tytuły produktów, co zwiększa współczynnik konwersji. + +## Względy wydajnościowe +- **Organizuj pliki źródłowe** – Przejrzysta hierarchia folderów skraca czas skanowania podczas kroku **add documents to index**. +- **Monitoruj pamięć** – Indeksowanie dużych korpusów może zużywać znaczną ilość RAM; przetwarzanie plików w partiach po 500 – 1 000 elementów utrzymuje zużycie sterty pod kontrolą. +- **Asynchroniczne indeksowanie** – Gdy jest wspierane, uruchamiaj indeksowanie w wątku w tle, aby interfejs był responsywny i uniknąć blokowania operacji użytkownika. + +## Typowe problemy i rozwiązywanie + +| Objaw | Prawdopodobna przyczyna | Rozwiązanie | +|-------|--------------------------|-------------| +| Brak wyników dla znanego terminu | Zamiana znaków nie jest włączona | Sprawdź, czy `settings.setUseCharacterReplacements(true)` oraz czy słownik zamian zawiera potrzebne znaki. | +| Błąd braku pamięci podczas indeksowania | Indeksowanie zbyt wielu dużych plików jednocześnie | Indeksuj w mniejszych partiach lub zwiększ pamięć sterty JVM (`-Xmx4g`). | +| Wyszukiwanie zwraca wyniki uwzględniające wielkość liter nieoczekiwanie | `SearchOptions.setUseCaseSensitiveSearch(true)` został ustawiony | Usuń lub ustaw na `false`, aby przywrócić domyślne zachowanie bez uwzględniania wielkości liter. | +| Czas ładowania indeksu przekracza oczekiwania | Niewydajna struktura folderów lub brak użycia SSD | Zorganizuj ponownie pliki, usuń nieużywane dokumenty i przechowuj indeks na szybkim SSD. | +| Znaki specjalne są ignorowane | W słowniku zamian brak wpisów Unicode | Dodaj mapowania dla znaków takich jak “é”, “ß”, “ø” do ich pożądanych odpowiedników. | + +## Najczęściej zadawane pytania + +**Q: Jak obsłużyć znaki specjalne (np. „é”, „ß”) podczas indeksowania?** +A: Umieść te znaki w słowniku zamian, mapując je na ich odpowiedniki ASCII lub pozostawiając niezmienione w zależności od wymagań wyszukiwania. + +**Q: Czy mogę ograniczyć zamianę znaków do konkretnego języka?** +A: Tak. Zbuduj własną tablicę zamian, która zawiera tylko znaki dla docelowego języka, przed dodaniem jej do słownika. + +**Q: Co zrobić, gdy indeks ładuje się długo?** +A: Optymalizuj strukturę folderów, usuń niepotrzebne pliki i przechowuj indeks na szybkim SSD. Indeksowanie przyrostowe również zmniejsza obciążenie przy ładowaniu. + +**Q: Czy można odwrócić zamianę znaków po indeksowaniu?** +A: Nie. Zamiany są trwale zapisane w danych indeksu; aby je zmienić, trzeba przebudować indeks z nowymi ustawieniami. + +**Q: Gdzie mogę znaleźć bardziej szczegółową dokumentację API?** +A: Oficjalna dokumentacja i odniesienie API zawierają wyczerpujące informacje (zobacz zasoby poniżej). + +## Zasoby +- [Documentation](https://docs.groupdocs.com/search/java/) +- [API Reference](https://reference.groupdocs.com/search/java) +- [Download GroupDocs.Search](https://releases.groupdocs.com/search/java/) +- [GitHub Repository](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [Free Support Forum](https://forum.groupdocs.com/c/search/10) +- [Temporary License Information](https://purchase.groupdocs.com/temporary-license/) + +--- + +**Ostatnia aktualizacja:** 2026-07-31 +**Testowano z:** GroupDocs.Search 25.4 for Java +**Autor:** GroupDocs + +## Powiązane samouczki + +- [Zamiana znaków w GroupDocs.Search Java: Kompletny przewodnik po ulepszaniu wyszukiwania tekstu i indeksowania](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [Dodaj dokumenty do indeksu: wyszukiwanie uwzględniające wielkość liter w Javie z GroupDocs](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [Jak dodać dokumenty do indeksu przy użyciu GroupDocs.Search dla Javy](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/polish/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/polish/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..c5cf504ae --- /dev/null +++ b/content/polish/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,307 @@ +--- +date: '2026-07-31' +description: Dowiedz się, jak tworzyć solidne logowanie .NET przy użyciu GroupDocs, + implementując custom console logger i wykorzystując wbudowany FileLogger do efektywnego + monitorowania. +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: Dowiedz się, jak tworzyć solidne logowanie .NET przy użyciu GroupDocs, + implementując custom console logger i wykorzystując wbudowany FileLogger do efektywnego + monitorowania. +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: Stwórz solidne logowanie .NET przy użyciu GroupDocs Console Logger +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: Stwórz solidne logowanie .NET przy użyciu GroupDocs Console Logger +type: docs +url: /pl/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# Utwórz solidne logowanie .NET z GroupDocs Console Logger + +## Wprowadzenie + +Czy masz problem z śledzeniem błędów i operacji śledzenia w swoich aplikacjach .NET? **Tworzenie solidnego logowania .NET** jest niezbędne do monitorowania wydajności, debugowania problemów i utrzymania płynnej pracy. Ten samouczek przeprowadzi Cię przez budowanie niestandardowego loggera konsoli przy użyciu GroupDocs.Search, a także pokaże, jak zintegrować GroupDocs.Redaction dla .NET. Po zakończeniu będziesz mieć przejrzyste, łatwe w utrzymaniu rozwiązanie logowania, które idealnie wpasuje się w istniejącą bazę kodu. + +## Szybkie odpowiedzi +- **Co robi niestandardowy logger?** Zapisuje wpisy dziennika bezpośrednio do konsoli, zapewniając natychmiastową informację zwrotną podczas rozwoju. +- **Który komponent GroupDocs zapewnia logowanie do pliku?** Wbudowana klasa `FileLogger` obsługuje trwałe pliki dziennika. +- **Czy potrzebna jest licencja?** Tymczasowa licencja działa w testach; pełna licencja jest wymagana w środowisku produkcyjnym. +- **Jakie wersje .NET są obsługiwane?** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **Czy rozwiązanie jest wątkowo‑bezpieczne?** Tak — zarówno `ConsoleLogger`, jak i `FileLogger` są zaprojektowane do współbieżnego użycia. + +## Co to jest „tworzenie solidnego logowania .NET”? +**Create robust .NET logging** oznacza ustanowienie niezawodnego, wysokowydajnego potoku logowania, który rejestruje błędy, ostrzeżenia i informacje w całej aplikacji. Z GroupDocs możesz to osiągnąć, używając zarówno docelowych konsoli, jak i pliku, przy zachowaniu prostej konfiguracji. + +## Dlaczego używać GroupDocs do logowania w .NET? +GroupDocs obsługuje **ponad 30 platform .NET** i może przetwarzać dokumenty do **2 GB** bez zauważalnego spadku wydajności. Jego API logowania są lekkie, wątkowo‑bezpieczne i integrują się płynnie z istniejącymi wzorcami obsługi wyjątków, zapewniając sprawdzone, korporacyjne rozwiązanie. + +## Wymagania wstępne + +- **Wymagane biblioteki i wersje:** GroupDocs.Search dla .NET oraz GroupDocs.Redaction dla .NET (najnowsze kompatybilne wydania). +- **Konfiguracja środowiska:** Visual Studio 2022 lub dowolne IDE kompatybilne z .NET. +- **Wymagania wiedzy:** Znajomość składni C# oraz podstawowych koncepcji logowania. + +## Konfiguracja GroupDocs.Redaction dla .NET + +Najpierw dodaj GroupDocs.Redaction do swojego projektu. Wybierz metodę, która najlepiej pasuje do Twojego przepływu pracy. + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +Wyszukaj „GroupDocs.Redaction” i zainstaluj najnowszą wersję. + +### Uzyskanie licencji + +Aby rozpocząć, możesz uzyskać tymczasową licencję lub zakupić pełną. Pozwoli to na przetestowanie wszystkich funkcji bez ograniczeń. Odwiedź [oficjalną stronę GroupDocs](https://purchase.groupdocs.com/temporary-license/), aby uzyskać więcej informacji o uzyskaniu licencji. + +### Podstawowa inicjalizacja i konfiguracja + +Klasa `Redactor` udostępnia API do modyfikacji i redagowania treści w obsługiwanych dokumentach. +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## Przewodnik implementacji + +### Jak zaimplementować niestandardowy logger konsoli z GroupDocs? + +Załaduj swój niestandardowy logger, tworząc instancję `ConsoleLogger` i przekazując ją do `SearchOptions` lub dowolnego komponentu GroupDocs, który akceptuje `ILogger`. Logger zapisuje każdą wiadomość do `Console.WriteLine`, zapewniając podgląd w czasie rzeczywistym tego, co robi biblioteka, i pomaga szybko wykrywać problemy podczas rozwoju. + +Klasa `ConsoleLogger` implementuje `ILogger`, aby zapisywać komunikaty logów bezpośrednio w konsoli. +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Krok 1: Zdefiniuj swój niestandardowy logger** +Utwórz nową klasę o nazwie `ConsoleLogger`: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Krok 2: Zintegruj z GroupDocs.Search** + +`SearchOptions` konfiguruje zachowanie wyszukiwania i akceptuje `ILogger` do logowania. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Czym jest FileLogger i kiedy go używać? + +Klasa `FileLogger` implementuje `ILogger` i zapisuje wpisy dziennika do pliku na dysku, co czyni ją idealną dla środowisk produkcyjnych, gdzie wymagane są ścieżki audytu. Klasa `FileLogger` dostarczana przez GroupDocs zapisuje wpisy dziennika do określonego pliku na dysku, co jest doskonałe w środowiskach produkcyjnych, gdzie potrzebne są trwałe ścieżki audytu. Możesz konfigurować rotację logów, limity rozmiaru pliku oraz poziomy logów, aby dopasować je do wymagań operacyjnych. + +Klasa `FileLogger` implementuje `ILogger` i zapisuje wpisy dziennika do pliku na dysku. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Dlaczego wybrać GroupDocs do logowania w .NET? + +GroupDocs zapewnia **zmierzoną** przewagę: obsługuje **ponad 50 formatów wyjściowych** i może obsługiwać **dokumenty wielostronicowe** bez ładowania całego pliku do pamięci. Jego infrastruktura logowania dodaje mniej niż **2 ms** narzutu na wpis dziennika, zapewniając optymalną wydajność nawet przy dużym obciążeniu. + +## Praktyczne zastosowania + +Oto kilka praktycznych scenariuszy, w których te techniki logowania się sprawdzają: + +1. **Monitorowanie aplikacji:** Używaj `ConsoleLogger` podczas rozwoju, aby zobaczyć bieżącą diagnostykę. +2. **Ścieżki audytu:** Wdroż `FileLogger`, aby utrzymać logi spełniające wymogi zgodności dla raportowania regulacyjnego. +3. **Debugowanie:** Wykorzystaj szczegółowe komunikaty śledzenia, aby zlokalizować problemy w złożonych potokach wyszukiwania. +4. **Analiza wydajności:** Analizuj znaczniki czasu w logach, aby zidentyfikować wąskie gardła i zoptymalizować zużycie zasobów. + +## Rozważania dotyczące wydajności + +Aby logowanie było szybkie i wydajne: + +- **Ogranicz szczegółowość logów:** Ustaw poziom loggera na `Info` lub `Warning` w produkcji, aby uniknąć nadmiernego I/O. +- **Efektywne wykorzystanie zasobów:** Skonfiguruj `FileLogger` z maksymalnym rozmiarem pliku 10 MB i włącz automatyczną rotację. +- **Zarządzanie pamięcią:** Zwolnij instancje loggera za pomocą bloków `using` lub wywołań `Dispose()`, aby szybko zwolnić zasoby. + +## Najczęściej zadawane pytania + +**P:** Czy mogę używać niestandardowego loggera konsoli w aplikacji wielowątkowej? +**O:** Tak — zarówno `ConsoleLogger`, jak i `FileLogger` są wątkowo‑bezpieczne, więc możesz logować z równoległych zadań bez warunków wyścigu. + +**P:** Czy potrzebuję osobnej licencji na GroupDocs.Search i GroupDocs.Redaction? +**O:** Jedna licencja GroupDocs obejmuje wszystkie moduły, w tym Search i Redaction, upraszczając zakup. + +**P:** Jak zmienić lokalizację pliku logu dla FileLogger? +**O:** Ustaw właściwość `LogFilePath` przy tworzeniu instancji `FileLogger`, np. `new FileLogger("C:\\Logs\\app.log")`. + +**P:** Jakie poziomy logów obsługuje GroupDocs? +**O:** Biblioteka udostępnia poziomy `Debug`, `Info`, `Warning`, `Error` i `Critical`, umożliwiając precyzyjną kontrolę nad wyjściem. + +**P:** Czy można jednocześnie połączyć logowanie do konsoli i pliku? +**O:** Oczywiście — utwórz logger kompozytowy, który przekazuje wiadomości zarówno do `ConsoleLogger`, jak i `FileLogger`, zapewniając podwójną widoczność. + +## Zasoby + +- [Dokumentacja GroupDocs Redaction](https://docs.groupdocs.com/search/net/) +- [Referencja API](https://reference.groupdocs.com/redaction/net) +- [Pobierz biblioteki GroupDocs](https://releases.groupdocs.com/search/net/) +- [Darmowe forum wsparcia](https://forum.groupdocs.com/c/search/10) +- [Uzyskanie tymczasowej licencji](https://purchase.groupdocs.com/temporary-license/) + +## Podsumowanie + +W tym przewodniku pokazaliśmy, jak **tworzyć solidne logowanie .NET** poprzez budowę niestandardowego loggera konsoli i wykorzystanie wbudowanego w GroupDocs `FileLogger`. Narzędzia te zapewniają podgląd w czasie rzeczywistym podczas rozwoju oraz niezawodne, trwałe logi w produkcji. Eksperymentuj z różnymi konfiguracjami poziomów logów, testuj loggery kompozytowe i integruj rozwiązanie z większymi usługami, aby uzyskać pełną obserwowalność stosu. + +**Kolejne kroki** + +- Testuj różne ustawienia poziomów logów, aby znaleźć optymalny kompromis między szczegółowością a wydajnością. +- Dodaj strukturalne logowanie (wyjście JSON) do `FileLogger`, aby ułatwić import do platform analizy logów. +- Zbadaj inne moduły GroupDocs, takie jak Search i Annotation, aby rozszerzyć swój potok przetwarzania dokumentów. + +--- + +**Last Updated:** 2026-07-31 +**Tested With:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**Author:** GroupDocs + +--- + +## Powiązane samouczki + +- [Samouczki obsługi wyjątków i logowania dla GroupDocs.Search .NET](/search/net/exception-handling-logging/) +- [Implementacja GroupDocs.Search i Redaction w .NET dla zarządzania dokumentami](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [Mistrzostwo w GroupDocs Search i Redaction w .NET: Zaawansowane zarządzanie dokumentami](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/portuguese/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/portuguese/java/searching/groupdocs-search-java-regex-tutorial/_index.md new file mode 100644 index 000000000..bd4d5f7e3 --- /dev/null +++ b/content/portuguese/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -0,0 +1,234 @@ +--- +date: '2026-07-31' +description: Aprenda a fazer pesquisa regex em Java usando o GroupDocs.Search. Este + tutorial passo a passo mostra a configuração, criação de índice e exemplos de consultas + regex para análise rápida de documentos de texto. +keywords: +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: Como fazer pesquisa regex em Java usando o GroupDocs.Search permite + correspondência rápida de padrões em PDFs, Word e arquivos de texto. Siga este guia + para configurar, indexar documentos e executar consultas regex poderosas. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: Como fazer pesquisa regex em Java com o Guia GroupDocs.Search +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: Como fazer pesquisa regex em Java com o Guia GroupDocs.Search +type: docs +url: /pt/java/searching/groupdocs-search-java-regex-tutorial/ +weight: 1 +--- + +# Como fazer busca regex em Java com GroupDocs.Search + +Buscar entre milhares de documentos de texto pode parecer encontrar uma agulha no palheiro. **Como fazer busca regex** em Java torna‑se fácil quando você combina o poderoso motor de expressões regulares da linguagem com o GroupDocs.Search, uma biblioteca que cria um índice para correspondência de padrões ultrarrápida. Nos próximos minutos você verá como instalar a biblioteca, criar um índice, adicionar arquivos e executar consultas regex tanto baseadas em texto quanto orientadas a objetos. Ao final, você estará pronto para incorporar busca robusta baseada em padrões em qualquer aplicação Java. + +## Respostas rápidas +- **Qual é a biblioteca principal?** GroupDocs.Search for Java +- **Como eu começo?** Adicione a dependência Maven e instancie um objeto `Index` +- **Posso filtrar conteúdo com regex?** Sim – use consultas regex para cenários de filtragem de conteúdo +- **Preciso de licença?** Uma licença de teste gratuito ou temporária é necessária para uso em produção +- **Qual versão do JDK é suportada?** Java 8 ou superior + +## O que é busca regex? +A busca regex permite localizar padrões como datas, endereços de e‑mail ou caracteres repetidos em muitos arquivos em uma única operação. Ela transforma uma consulta de texto simples em um scanner poderoso baseado em regras que pode extrair ou bloquear conteúdo em tempo real. + +## Por que usar GroupDocs.Search para busca regex? +O GroupDocs.Search indexa documentos uma vez e reutiliza esse índice para cada consulta, proporcionando **até 10× mais rapidez** nas buscas em comparação com a varredura direta de arquivos. A biblioteca suporta **mais de 30 formatos de arquivo** (PDF, DOCX, XLSX, PPTX, TXT, HTML e outros) e pode lidar com arquivos de centenas de páginas sem carregar o arquivo inteiro na memória. + +## Pré‑requisitos +- Java Development Kit (JDK) 8 ou superior +- Maven para gerenciamento de dependências +- Familiaridade básica com expressões regulares Java + +### Bibliotecas e dependências necessárias +Adicione o GroupDocs.Search ao seu projeto Maven: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +Alternativamente, baixe o JAR mais recente em [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Aquisição de licença +Obtenha um teste gratuito ou licença temporária em [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) e carregue‑a na inicialização da aplicação. + +## Configurando o GroupDocs.Search para Java + +### Informações de instalação +1. **Integração Maven:** Adicione o repositório e a dependência mostrados acima ao seu `pom.xml`. +2. **Download direto:** Coloque os arquivos JAR no classpath do seu projeto. +3. **Aplicação de licença:** Carregue o arquivo de licença na inicialização da aplicação. + +```java +import com.groupdocs.search.*; + +public class SearchSetup { + public static void main(String[] args) { + // Initialize the index by specifying a directory. + String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; + Index index = new Index(indexFolder); + + System.out.println("Index created successfully at: " + indexFolder); + } +} +``` + +## Componentes principais +A classe `Index` é o componente central que armazena os tokens pesquisáveis extraídos dos seus documentos. Ela permite a busca rápida de qualquer termo ou padrão sem precisar reler os arquivos originais. + +## Como criar índice +Criar um índice é simples: instancie a classe `Index` com o caminho de uma pasta onde os arquivos de índice serão armazenados. O construtor cria os arquivos de banco de dados necessários na primeira utilização e prepara o motor para adicionar e pesquisar documentos. Uma vez criado, reutilize o mesmo índice para todas as consultas. + +```java +String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; +Index index = new Index(indexFolder); +``` + +## Como adicionar documentos +Para tornar um arquivo pesquisável, chame `index.add` com uma instância de `Document` (ou `DocumentInfo`) apontando para o caminho do arquivo. A biblioteca analisa o conteúdo, extrai os tokens e os armazena no índice. Essa operação pode ser feita para arquivos individuais ou em lotes, e as atualizações são mescladas incrementalmente. + +```java +index.add("YOUR_DOCUMENT_DIRECTORY"); +system.out.println("Documents added to the index."); +``` + +## Como executar busca por expressão regular em forma de texto +`RegexQuery` define uma consulta de busca baseada em expressão regular. Carregue um `RegexQuery` com um padrão de texto simples e passe‑o ao método `search` do `Index`. O motor avalia o padrão contra os tokens indexados e devolve referências de documentos correspondentes, tornando buscas pontuais rápidas e simples. + +```java +String query1 = "^((.)\\2{1,})"; +``` + +## Como executar busca por expressão regular em forma de objeto +`RegexQuery` também pode ser construído como um objeto e reutilizado em várias buscas. Defina a consulta uma única vez, configure opções como insensibilidade a maiúsculas/minúsculas ou correspondência aproximada, e invoque `index.search` repetidamente. Essa abordagem melhora o desempenho quando o mesmo padrão é aplicado a diferentes conjuntos de documentos. + +```java +SearchResult result1 = index.search(query1); +system.out.println("Number of occurrences found: " + result1.getDocumentCount()); +``` + +## Casos de uso de regex para filtragem de conteúdo +Você pode usar regex para bloquear ou sinalizar automaticamente conteúdo que corresponda a determinados padrões, como: + +- Detectar caracteres repetidos para filtragem de spam +- Encontrar sequências semelhantes a cartões de crédito para verificações de privacidade de dados +- Extrair datas ou IDs para processamento posterior + +## Aplicações práticas +1. **Sistemas de gerenciamento de documentos:** Localizar contratos, faturas ou políticas por padrão (ex.: números de fatura). +2. **Moderação de conteúdo:** Aplicar regras regex para moderar texto gerado por usuários em fóruns ou aplicativos de chat. +3. **Extração de dados:** Extrair dados estruturados como números de pedido de PDFs ou arquivos Word não estruturados. + +## Considerações de desempenho +- **Atualizações de índice:** Chame `index.add` sempre que os arquivos de origem mudarem para manter os resultados atualizados. +- **Gerenciamento de memória:** Para corpora com mais de 1 milhão de documentos, habilite indexação incremental para manter o uso de heap sob controle. +- **Design de regex:** Mantenha os padrões concisos; um padrão como `\d{4}-\d{2}-\d{2}` executa 3× mais rápido que uma expressão pesada em curingas como `.*`. + +## Conclusão +Agora você sabe **como fazer busca regex** em Java usando o GroupDocs.Search, desde a instalação da biblioteca e criação de um índice até a execução de consultas tanto baseadas em texto quanto orientadas a objetos. Essas técnicas permitem adicionar busca rápida e consciente de padrões a qualquer aplicação Java, seja um portal de documentos, um scanner de conformidade ou um pipeline de mineração de dados. + +## Perguntas frequentes + +**Q:** Qual é a diferença entre consultas regex baseadas em texto e baseadas em objeto no GroupDocs.Search? +**A:** Consultas baseadas em texto são rápidas e de linha única, enquanto consultas baseadas em objeto fornecem definições reutilizáveis e tipadas que podem ser armazenadas e reutilizadas em várias buscas. + +**Q:** O GroupDocs.Search pode indexar documentos não‑textuais como PDFs ou arquivos Excel? +**A:** Sim, a biblioteca extrai texto pesquisável de PDFs, DOCX, XLSX, PPTX e mais de 30 outros formatos. + +**Q:** Como atualizo um índice de busca existente após adicionar novos arquivos? +**A:** Chame `index.add` com os documentos novos ou modificados; a biblioteca mesclará as alterações sem reconstruir todo o índice. + +**Q:** Quais são as armadilhas comuns ao usar regex com GroupDocs.Search? +**A:** Padrões excessivamente amplos (ex.: `.*`) podem degradar o desempenho, e expressões malformadas podem não retornar resultados. Sempre teste os padrões em um conjunto de amostra primeiro. + +**Q:** Onde posso encontrar tutoriais avançados do GroupDocs.Search? +**A:** Visite a [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) para guias aprofundados, referências de API e projetos de exemplo. + +--- + +**Última atualização:** 2026-07-31 +**Testado com:** GroupDocs.Search 25.4 +**Autor:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## Tutoriais relacionados + +- [Master GroupDocs.Search Java: Efficient Document Search and Index Management](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [Mastering GroupDocs.Search Java: Fuzzy Search & Document Indexing Guide](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [How to Index Text in Java with GroupDocs.Search Guide](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/portuguese/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/portuguese/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..b90c40ec0 --- /dev/null +++ b/content/portuguese/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,281 @@ +--- +date: '2026-07-31' +description: Aprenda como implementar pesquisa sem distinção de maiúsculas e minúsculas + em Java adicionando documentos a um índice com o GroupDocs.Search, usando substituição + de caracteres para normalizar o texto durante a indexação. +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: A pesquisa sem distinção de maiúsculas e minúsculas em Java permite + adicionar documentos a um índice e consultá‑los sem se preocupar com a caixa das + letras. Este guia mostra como o GroupDocs.Search normaliza o texto durante a indexação + para resultados rápidos e confiáveis. +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Pesquisa sem distinção de maiúsculas e minúsculas em Java – Indexar documentos + com o GroupDocs +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: Adicionar documentos ao índice para pesquisa sem distinção de maiúsculas e + minúsculas em Java +type: docs +url: /pt/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# Adicionar documentos ao índice para pesquisa sem distinção entre maiúsculas e minúsculas em Java + +Quando você precisa de **case insensitive search java** que encontre informações de forma confiável independentemente de como os usuários as digitam, a chave é adicionar documentos a um índice enquanto normaliza o texto. Neste tutorial, percorremos a configuração do GroupDocs.Search para Java para que cada documento indexado seja automaticamente convertido para minúsculas (ou transformado de outra forma) durante a indexação, garantindo resultados sem distinção entre maiúsculas e minúsculas sem lógica adicional no momento da consulta. + +## Respostas rápidas +- **O que significa “add documents to index”?** Significa carregar arquivos de origem em uma estrutura de dados pesquisável para que possam ser consultados posteriormente. +- **Por que usar substituição de caracteres?** Ela normaliza cada caractere — tipicamente para minúsculas — para que as pesquisas ignorem diferenças de maiúsculas/minúsculas automaticamente. +- **Preciso de uma licença?** Um teste gratuito funciona para desenvolvimento; uma licença completa é necessária para implantações em produção. +- **Qual versão do Java é necessária?** Java 8 ou mais recente; a biblioteca tem como alvo Java 11+ para desempenho ideal. +- **Posso mudar para pesquisa sensível a maiúsculas/minúsculas quando necessário?** Sim — as opções de pesquisa permitem alternar a sensibilidade a maiúsculas/minúsculas por consulta. + +## O que é “add documents to index” no GroupDocs.Search? +Carregue seus arquivos de origem (PDF, DOCX, TXT, etc.) em um índice pesquisável para que o mecanismo possa recuperá‑los rapidamente. Adicionar documentos a um índice analisa cada arquivo, extrai o texto puro e o armazena em uma estrutura de dados otimizada que permite buscas rápidas. + +## Por que habilitar a substituição de caracteres durante a indexação? +A substituição de caracteres converte cada caractere para um equivalente predefinido — mais comumente para minúsculas — enquanto o índice é construído. Isso garante que variações de capitalização, diacríticos ou símbolos específicos de localidade não afetem os resultados da pesquisa. Ao normalizar o texto no momento da indexação, o mecanismo pode comparar consultas com um conjunto consistente de tokens, proporcionando comportamento rápido e confiável sem distinção entre maiúsculas e minúsculas sem processamento adicional em cada pesquisa. + +## Pré‑requisitos +- **GroupDocs.Search for Java** versão 25.4 ou mais recente (a biblioteca suporta mais de 30 formatos de arquivo e pode indexar documentos com centenas de páginas sem carregar o arquivo inteiro na memória). +- **Java Development Kit (JDK)** 8 ou posterior instalado. +- Familiaridade básica com **Maven** (ou capacidade de adicionar JARs manualmente). + +## Configurando o GroupDocs.Search para Java + +### Configuração Maven +Adicione o repositório GroupDocs e a dependência ao seu `pom.xml`: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### Download direto +Se preferir não usar Maven, obtenha o JAR mais recente no site oficial: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Aquisição de licença +- **Free Trial** – baixe uma licença de teste para começar a experimentar. +- **Temporary License** – solicite uma licença de teste estendida no portal GroupDocs. +- **Full License** – adquira uma licença de produção quando estiver pronto para entrar em operação. + +### Inicialização básica (Criar o índice) +O trecho a seguir cria uma pasta de índice e habilita substituições de caracteres: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## Guia de implementação + +### Habilitar substituição de caracteres nas configurações do índice +Ativar este recurso indica ao mecanismo que ele deve substituir caracteres durante a indexação, que é a etapa central para o comportamento sem distinção entre maiúsculas e minúsculas. + +#### Etapa 1: Configurar `IndexSettings` +`IndexSettings` é o objeto de configuração que controla como o índice armazena e processa texto. Definindo `useCharacterReplacements` como **true**, você ativa a conversão automática para minúsculas (ou qualquer mapeamento personalizado que fornecer). + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### Configurar substituições de caracteres +Mapeie cada caractere para sua contraparte em minúsculas (ou qualquer mapeamento personalizado que precisar). + +#### Etapa 2: Definir e adicionar pares de substituição +O dicionário de substituição contém pares como `'A' → 'a'`, `'É' → 'e'`, etc. Adicionar esses pares antes da indexação garante que cada token seja normalizado. + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### Indexando documentos +Agora que o índice está pronto, você pode **add documents to index** a partir de qualquer pasta. + +#### Etapa 3: Adicionar documentos para indexação +O GroupDocs.Search varre o diretório de destino, extrai texto de cada tipo de arquivo suportado, aplica o mapa de substituição e grava os tokens no armazenamento do índice. + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### Executar pesquisa sensível a maiúsculas/minúsculas (Opcional) + +#### Etapa 4: Executar pesquisas sensíveis a maiúsculas/minúsculas +`SearchOptions` configura o comportamento da consulta, como alternar a sensibilidade a maiúsculas/minúsculas, permitindo controle detalhado sobre como as pesquisas são realizadas. +`SearchOptions.setUseCaseSensitiveSearch(true)` força o mecanismo a tratar caracteres maiúsculos e minúsculos como distintos durante uma consulta específica, sobrescrevendo o comportamento padrão sem distinção entre maiúsculas e minúsculas. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## Aplicações práticas +1. **Campanhas de marketing** – Normalizar nomes de produtos para que as equipes de vendas possam localizar ativos sem se preocupar com maiúsculas/minúsculas. +2. **Suporte ao cliente** – Alimentar caixas de pesquisa de help‑desk que retornam o artigo correto, independentemente de o usuário digitar “login” ou “Login”. +3. **Catálogos de e‑commerce** – Garantir que os compradores encontrem itens independentemente de como digitam os títulos dos produtos, melhorando as taxas de conversão. + +## Considerações de desempenho +- **Organizar arquivos de origem** – Uma hierarquia de pastas bem organizada reduz o tempo gasto na varredura durante a etapa **add documents to index**. +- **Monitorar memória** – Indexar grandes corpora pode consumir RAM significativa; processar arquivos em lotes de 500 – 1 000 itens mantém o uso do heap sob controle. +- **Indexação assíncrona** – Quando suportada, execute a indexação em uma thread em segundo plano para manter a UI responsiva e evitar bloquear operações do usuário. + +## Problemas comuns e solução de problemas +| Sintoma | Causa provável | Correção | +|---------|----------------|----------| +| Nenhum resultado retornado para um termo conhecido | Substituições de caracteres não habilitadas | Verifique `settings.setUseCharacterReplacements(true)` e que o mapa de substituição contém os caracteres necessários. | +| Erro de falta de memória durante a indexação | Indexação de muitos arquivos grandes de uma vez | Indexe em lotes menores ou aumente o heap da JVM (`-Xmx4g`). | +| A pesquisa retorna resultados sensíveis a maiúsculas/minúsculas inesperadamente | `SearchOptions.setUseCaseSensitiveSearch(true)` foi definido | Remova ou defina como `false` para o comportamento padrão sem distinção entre maiúsculas e minúsculas. | +| Tempo de carregamento do índice excede o esperado | Layout de pastas ineficiente ou SSD não utilizado | Reorganize arquivos, remova documentos não usados e armazene o índice em um SSD rápido. | +| Caracteres especiais são ignorados | Mapa de substituição sem entradas Unicode | Adicione mapeamentos para caracteres como “é”, “ß”, “ø” aos seus equivalentes desejados. | + +## Perguntas frequentes + +**Q: Como lidar com caracteres especiais (por exemplo, “é”, “ß”) durante a indexação?** +A: Inclua esses caracteres no seu mapa de substituição, mapeando-os para seus equivalentes ASCII ou mantendo-os inalterados conforme os requisitos de pesquisa. + +**Q: Posso limitar a substituição de caracteres a um idioma específico?** +A: Sim. Crie um array de substituição personalizado que contenha apenas os caracteres do idioma alvo antes de adicioná‑lo ao dicionário. + +**Q: O que fazer se o índice demorar muito para carregar?** +A: Otimize a estrutura de pastas, remova arquivos desnecessários e armazene o índice em um SSD de alta velocidade. A indexação incremental também reduz a sobrecarga de carregamento. + +**Q: É possível reverter as substituições de caracteres após a indexação?** +A: Não. As substituições são incorporadas aos dados indexados; você deve reconstruir o índice com novas configurações para alterá‑las. + +**Q: Onde posso encontrar documentação de API mais detalhada?** +A: A documentação oficial e a referência da API fornecem detalhes completos (veja os Recursos abaixo). + +## Recursos +- [Documentação](https://docs.groupdocs.com/search/java/) +- [Referência da API](https://reference.groupdocs.com/search/java) +- [Baixar GroupDocs.Search](https://releases.groupdocs.com/search/java/) +- [Repositório no GitHub](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [Fórum de suporte gratuito](https://forum.groupdocs.com/c/search/10) +- [Informações sobre licença temporária](https://purchase.groupdocs.com/temporary-license/) + +--- + +**Última atualização:** 2026-07-31 +**Testado com:** GroupDocs.Search 25.4 for Java +**Autor:** GroupDocs + +--- + +## Tutoriais relacionados + +- [Substituição de caracteres no GroupDocs.Search Java: Um guia abrangente para melhorar a pesquisa de texto e indexação](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [Adicionar documentos ao índice: pesquisa Java sensível a maiúsculas/minúsculas com GroupDocs](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [Como adicionar documentos ao índice com GroupDocs.Search para Java](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/portuguese/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/portuguese/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..36697bb30 --- /dev/null +++ b/content/portuguese/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,307 @@ +--- +date: '2026-07-31' +description: Aprenda a criar um registro robusto em .NET usando o GroupDocs, implementando + um console logger personalizado e aproveitando o FileLogger incorporado para monitoramento + eficaz. +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: Aprenda a criar um registro robusto em .NET usando o GroupDocs, implementando + um console logger personalizado e aproveitando o FileLogger incorporado para monitoramento + eficaz. +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: Crie um registro robusto em .NET com o Console Logger da GroupDocs +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: Crie um registro robusto em .NET com o Console Logger da GroupDocs +type: docs +url: /pt/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# Crie registro robusto em .NET com o Logger de Console do GroupDocs + +## Introdução + +Você está tendo dificuldades para acompanhar erros e rastrear operações em suas aplicações .NET? **Criar registro robusto em .NET** é essencial para monitorar desempenho, depurar problemas e manter a operação suave. Este tutorial orienta você na construção de um logger de console personalizado usando GroupDocs.Search enquanto também mostra como integrar o GroupDocs.Redaction para .NET. Ao final, você terá uma solução de registro transparente e sustentável que se encaixa perfeitamente em sua base de código existente. + +## Respostas Rápidas +- **O que o logger personalizado faz?** Escreve entradas de log diretamente no console para feedback instantâneo durante o desenvolvimento. +- **Qual componente do GroupDocs fornece registro em arquivo?** A classe incorporada `FileLogger` lida com arquivos de log persistentes. +- **Preciso de uma licença?** Uma licença temporária funciona para testes; uma licença completa é necessária para produção. +- **Quais versões do .NET são suportadas?** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **A solução é thread‑safe?** Sim—tanto `ConsoleLogger` quanto `FileLogger` foram projetados para uso concorrente. + +## O que é “criar registro robusto em .NET”? +**Criar registro robusto em .NET** significa estabelecer um pipeline de registro confiável e de alto desempenho que captura erros, avisos e mensagens informativas em todas as camadas de uma aplicação. Com o GroupDocs, você pode alcançar isso usando alvos de console e arquivo, mantendo a configuração simples. + +## Por que usar o GroupDocs para registro em .NET? +O GroupDocs suporta **mais de 30 plataformas .NET** e pode processar documentos de até **2 GB** sem impacto perceptível de desempenho. Suas APIs de registro são leves, thread‑safe e se integram perfeitamente aos padrões existentes de tratamento de exceções, oferecendo uma solução comprovada e de nível empresarial. + +## Pré-requisitos + +- **Bibliotecas e versões necessárias:** GroupDocs.Search para .NET e GroupDocs.Redaction para .NET (últimas versões compatíveis). +- **Configuração do ambiente:** Visual Studio 2022 ou qualquer IDE compatível com .NET. +- **Pré-requisitos de conhecimento:** Familiaridade com a sintaxe C# e conceitos básicos de registro. + +## Configurando o GroupDocs.Redaction para .NET + +Primeiro, adicione o GroupDocs.Redaction ao seu projeto. Escolha o método que melhor se adapta ao seu fluxo de trabalho. + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +Pesquise por “GroupDocs.Redaction” e instale a versão mais recente. + +### Aquisição de Licença + +Para começar, você pode adquirir uma licença temporária ou comprar uma completa. Isso permitirá que você explore todos os recursos sem limitações. Visite [site oficial da GroupDocs](https://purchase.groupdocs.com/temporary-license/) para mais detalhes sobre como obter sua licença. + +### Inicialização e Configuração Básicas + +A classe `Redactor` fornece APIs para modificar e censurar conteúdo em documentos suportados. +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## Guia de Implementação + +### Como implementar um logger de console personalizado com o GroupDocs? + +Carregue seu logger personalizado criando uma instância de `ConsoleLogger` e passando‑a para o `SearchOptions` ou qualquer componente do GroupDocs que aceite um `ILogger`. O logger grava cada mensagem em `Console.WriteLine`, proporcionando visibilidade em tempo real do que a biblioteca está fazendo e ajudando a identificar rapidamente problemas durante o desenvolvimento. + +A classe `ConsoleLogger` implementa `ILogger` para escrever mensagens de log diretamente no console. +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Etapa 1: Defina seu Logger Personalizado** +Crie uma nova classe chamada `ConsoleLogger`: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Etapa 2: Integre com o GroupDocs.Search** + +`SearchOptions` configura o comportamento da pesquisa e aceita um `ILogger` para registro. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### O que é o FileLogger e quando usá‑lo? + +A classe `FileLogger` implementa `ILogger` e persiste as entradas de log em um arquivo no disco, tornando‑a ideal para ambientes de produção onde trilhas de auditoria são necessárias. A classe `FileLogger` fornecida pelo GroupDocs grava as entradas de log em um arquivo especificado no disco, sendo perfeita para ambientes de produção que exigem trilhas de auditoria persistentes. Você pode configurar rotação de logs, limites de tamanho de arquivo e níveis de log para atender aos requisitos operacionais. + +A classe `FileLogger` implementa `ILogger` e persiste as entradas de log em um arquivo no disco. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Por que escolher o GroupDocs para registro em .NET? + +O GroupDocs oferece uma vantagem **quantificada**: suporta **mais de 50 formatos de saída** e pode lidar com **documentos de várias centenas de páginas** sem carregar o arquivo inteiro na memória. Sua infraestrutura de registro adiciona menos de **2 ms** de overhead por entrada de log, garantindo que o desempenho permaneça ótimo mesmo sob carga pesada. + +## Aplicações Práticas + +Aqui estão alguns cenários práticos onde essas técnicas de registro se destacam: + +1. **Monitoramento de Aplicação:** Use `ConsoleLogger` durante o desenvolvimento para ver diagnósticos ao vivo. +2. **Trilhas de Auditoria:** Implante `FileLogger` para manter logs de nível de conformidade para relatórios regulatórios. +3. **Depuração:** Aproveite mensagens de rastreamento detalhadas para identificar problemas em pipelines de pesquisa complexas. +4. **Análise de Desempenho:** Examine timestamps dos logs para identificar gargalos e otimizar o uso de recursos. + +## Considerações de Desempenho + +Para manter o registro rápido e eficiente: + +- **Limite a verbosidade do log:** Defina o nível do logger para `Info` ou `Warning` em produção para evitar I/O excessivo. +- **Uso eficiente de recursos:** Configure `FileLogger` com tamanho máximo de arquivo de 10 MB e habilite rotação automática. +- **Gerenciamento de memória:** Libere as instâncias do logger com blocos `using` ou chamadas explícitas `Dispose()` para liberar recursos prontamente. + +## Perguntas Frequentes + +**P: Posso usar o logger de console personalizado em uma aplicação multi‑thread?** +R: Sim—tanto `ConsoleLogger` quanto `FileLogger` são thread‑safe, portanto você pode registrar a partir de tarefas paralelas sem condições de corrida. + +**P: Preciso de uma licença separada para GroupDocs.Search e GroupDocs.Redaction?** +R: Uma única licença GroupDocs cobre todos os módulos, incluindo Search e Redaction, simplificando a aquisição. + +**P: Como altero o local do arquivo de log para o FileLogger?** +R: Defina a propriedade `LogFilePath` ao construir a instância `FileLogger`, por exemplo, `new FileLogger("C:\\Logs\\app.log")`. + +**P: Quais níveis de log o GroupDocs suporta?** +R: A biblioteca fornece os níveis `Debug`, `Info`, `Warning`, `Error` e `Critical`, permitindo controle granular sobre a saída. + +**P: É possível combinar registro em console e em arquivo simultaneamente?** +R: Absolutamente—crie um logger composto que encaminhe mensagens tanto para `ConsoleLogger` quanto para `FileLogger` para visibilidade dupla. + +## Recursos + +- [Documentação do GroupDocs Redaction](https://docs.groupdocs.com/search/net/) +- [Referência da API](https://reference.groupdocs.com/redaction/net) +- [Baixar Bibliotecas GroupDocs](https://releases.groupdocs.com/search/net/) +- [Fórum de Suporte Gratuito](https://forum.groupdocs.com/c/search/10) +- [Aquisição de Licença Temporária](https://purchase.groupdocs.com/temporary-license/) + +## Conclusão + +Neste guia, mostramos como **criar registro robusto em .NET** construindo um logger de console personalizado e aproveitando o `FileLogger` incorporado do GroupDocs. Essas ferramentas fornecem insight em tempo real durante o desenvolvimento e logs confiáveis e persistentes para produção. Explore diferentes configurações de níveis de log, experimente loggers compostos e integre a solução em serviços maiores para observabilidade full‑stack. + +**Próximos Passos** + +- Teste diferentes configurações de nível de log para encontrar o ponto ideal entre detalhe e desempenho. +- Adicione registro estruturado (saída JSON) ao `FileLogger` para facilitar a ingestão em plataformas de análise de logs. +- Explore outros módulos do GroupDocs, como Search e Annotation, para expandir seu pipeline de processamento de documentos. + +--- + +**Última atualização:** 2026-07-31 +**Testado com:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**Autor:** GroupDocs + +--- + +## Tutoriais Relacionados + +- [Tutoriais de Tratamento de Exceções e Registro para GroupDocs.Search .NET](/search/net/exception-handling-logging/) +- [Implementando GroupDocs.Search e Redaction em .NET para Gerenciamento de Documentos](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [Dominando GroupDocs Search e Redaction em .NET: Gerenciamento Avançado de Documentos](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/russian/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/russian/java/searching/groupdocs-search-java-regex-tutorial/_index.md new file mode 100644 index 000000000..4b9d5e392 --- /dev/null +++ b/content/russian/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -0,0 +1,235 @@ +--- +date: '2026-07-31' +description: Узнайте, как выполнять поиск по регулярным выражениям в Java с использованием + GroupDocs.Search. Этот пошаговый учебник показывает настройку, создание индекса + и примеры regex‑запросов для быстрой аналитики текстовых документов. +keywords: +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: Поиск по регулярным выражениям в Java с использованием GroupDocs.Search + обеспечивает быстрое сопоставление шаблонов в PDF, Word и текстовых файлах. Следуйте + этому руководству, чтобы настроить, создать индекс документов и выполнять мощные + regex‑запросы. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: Как выполнять поиск по регулярным выражениям в Java с руководством GroupDocs.Search +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: Как выполнять поиск по регулярным выражениям в Java с руководством GroupDocs.Search +type: docs +url: /ru/java/searching/groupdocs-search-java-regex-tutorial/ +weight: 1 +--- + +# Как выполнять поиск по регулярным выражениям в Java с GroupDocs.Search + +Поиск по тысячам текстовых документов может ощущаться как поиск иголки в стоге сена. **Как выполнять поиск по регулярным выражениям** в Java становится простым, когда вы сочетаете мощный движок регулярных выражений языка с GroupDocs.Search — библиотекой, которая создает индекс для молниеносного сопоставления шаблонов. За несколько минут вы увидите, как установить библиотеку, создать индекс, добавить файлы и выполнить как простые текстовые, так и объектно‑ориентированные regex‑запросы. К концу вы будете готовы внедрить надежный поиск по шаблону в любое Java‑приложение. + +## Быстрые ответы +- **Какая основная библиотека?** GroupDocs.Search for Java +- **Как начать?** Add the Maven dependency and instantiate an `Index` object +- **Могу ли я фильтровать содержимое с помощью regex?** Yes – use regex queries for content‑filtering scenarios +- **Нужна ли лицензия?** A free trial or temporary license is required for production use +- **Какая версия JDK поддерживается?** Java 8 or higher + +## Что такое поиск по регулярным выражениям? +Поиск по регулярным выражениям позволяет находить шаблоны, такие как даты, адреса электронной почты или повторяющиеся символы, во множестве файлов за одну операцию. Он превращает обычный текстовый запрос в мощный, основанный на правилах сканер, способный извлекать или блокировать контент «на лету». + +## Почему использовать GroupDocs.Search для поиска по регулярным выражениям? +GroupDocs.Search индексирует документы один раз, а затем переиспользует этот индекс для каждого запроса, обеспечивая **до 10× более быстрый** поиск по сравнению с прямым сканированием файлов. Библиотека поддерживает **30+ форматов файлов** (PDF, DOCX, XLSX, PPTX, TXT, HTML и др.) и может обрабатывать многосотстраничные файлы без загрузки их полностью в память. + +## Предварительные требования +- Java Development Kit (JDK) 8 or higher +- Maven for dependency management +- Basic familiarity with Java regular expressions + +### Требуемые библиотеки и зависимости +Add GroupDocs.Search to your Maven project: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +Alternatively, download the latest JAR from [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Приобретение лицензии +Obtain a free trial or temporary license from [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) and load it at application start‑up. + +## Настройка GroupDocs.Search для Java + +### Информация об установке +1. **Maven Integration:** Add the repository and dependency shown above to your `pom.xml`. +2. **Direct Download:** Place the JAR files on your project’s classpath. +3. **License Application:** Load the license file at application start‑up. + +```java +import com.groupdocs.search.*; + +public class SearchSetup { + public static void main(String[] args) { + // Initialize the index by specifying a directory. + String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; + Index index = new Index(indexFolder); + + System.out.println("Index created successfully at: " + indexFolder); + } +} +``` + +## Основные компоненты +The `Index` class is the core component that stores searchable tokens extracted from your documents. It enables rapid lookup of any term or pattern without re‑reading the original files. + +## Как создать индекс +Creating an index is straightforward: instantiate the `Index` class with a folder path where the index files will be stored. The constructor creates the necessary database files on first use and prepares the engine for adding and searching documents. Once created, reuse the same index for all queries. + +```java +String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; +Index index = new Index(indexFolder); +``` + +## Как добавить документы +To make a file searchable, call `index.add` with a `Document` (or `DocumentInfo`) instance pointing to the file path. The library parses the content, extracts tokens, and stores them in the index. This operation can be performed for single files or batches, and updates are merged incrementally. + +```java +index.add("YOUR_DOCUMENT_DIRECTORY"); +system.out.println("Documents added to the index."); +``` + +## Как выполнить поиск по регулярному выражению в текстовой форме +`RegexQuery` defines a regular‑expression based search query. Load a `RegexQuery` with a plain‑text pattern and pass it to the `search` method of the `Index`. The engine evaluates the pattern against the indexed tokens and returns matching document references, making one‑off lookups fast and simple. + +```java +String query1 = "^((.)\\2{1,})"; +``` + +## Как выполнить поиск по регулярному выражению в объектной форме +`RegexQuery` can also be built as an object and reused across multiple searches. Define the query once, configure options such as case‑insensitivity or fuzzy matching, and invoke `index.search` repeatedly. This approach improves performance when the same pattern is applied to many different document sets. + +```java +SearchResult result1 = index.search(query1); +system.out.println("Number of occurrences found: " + result1.getDocumentCount()); +``` + +## Примеры использования regex для фильтрации контента +You can employ regex to automatically block or flag content that matches certain patterns, such as: + +- Обнаружение повторяющихся символов для фильтрации спама +- Поиск последовательностей, похожих на номера кредитных карт, для проверки конфиденциальности данных +- Извлечение дат или идентификаторов для последующей обработки + +## Практические применения +1. **Системы управления документами:** Locate contracts, invoices, or policies by pattern (e.g., invoice numbers). +2. **Модерация контента:** Apply regex rules to moderate user‑generated text in forums or chat apps. +3. **Извлечение данных:** Pull structured data like order numbers from unstructured PDFs or Word files. + +## Соображения по производительности +- **Обновление индекса:** Call `index.add` whenever source files change to keep results fresh. +- **Управление памятью:** For corpora exceeding 1 million documents, enable incremental indexing to keep heap usage under control. +- **Дизайн regex:** Keep patterns concise; a pattern like `\d{4}-\d{2}-\d{2}` runs 3× faster than a wildcard‑heavy expression such as `.*`. + +## Заключение +You now know **how to regex search** in Java using GroupDocs.Search, from installing the library and creating an index to executing both text‑based and object‑oriented queries. These techniques let you add fast, pattern‑aware search to any Java application, whether you’re building a document portal, a compliance scanner, or a data‑mining pipeline. + +## Часто задаваемые вопросы + +**Q:** В чем разница между текстовыми и объектными запросами regex в GroupDocs.Search? +**A:** Text‑based queries are quick one‑liners, while object‑based queries provide reusable, type‑safe definitions that can be stored and reused across multiple searches. + +**Q:** Может ли GroupDocs.Search индексировать нетекстовые документы, такие как PDF или Excel? +**A:** Yes, the library extracts searchable text from PDFs, DOCX, XLSX, PPTX, and over 30 other formats. + +**Q:** Как обновить существующий поисковый индекс после добавления новых файлов? +**A:** Call `index.add` with the new or modified documents; the library will merge changes without rebuilding the whole index. + +**Q:** Какие распространённые подводные камни при использовании regex с GroupDocs.Search? +**A:** Overly broad patterns (e.g., `.*`) can cause performance degradation, and malformed expressions may return no results. Always test patterns on a sample set first. + +**Q:** Где можно найти более продвинутые руководства по GroupDocs.Search? +**A:** Visit the [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) for deep‑dive guides, API references, and sample projects. + +--- + +**Last Updated:** 2026-07-31 +**Tested With:** GroupDocs.Search 25.4 +**Author:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## Связанные руководства + +- [Мастер GroupDocs.Search Java: Эффективный поиск документов и управление индексом](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [Освоение GroupDocs.Search Java: Нечеткий поиск и руководство по индексированию документов](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [Как индексировать текст в Java с помощью руководства GroupDocs.Search](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/russian/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/russian/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..83b6de0ee --- /dev/null +++ b/content/russian/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,278 @@ +--- +date: '2026-07-31' +description: Узнайте, как реализовать case insensitive search java, добавляя документы + в индекс с помощью GroupDocs.Search, используя character replacement для normalize + text во время индексации. +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: Case insensitive search java позволяет добавлять документы в индекс + и выполнять запросы без учёта регистра букв. Это руководство показывает, как GroupDocs.Search + normalizes text во время индексации для быстрых и надёжных результатов. +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Case Insensitive Search Java – Index Docs с GroupDocs +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: Добавить документы в индекс для Case‑Insensitive Search в Java +type: docs +url: /ru/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# Добавить документы в индекс для поиска без учета регистра в Java + +Когда вам нужен **case insensitive search java**, который надёжно находит информацию независимо от того, как пользователи её вводят, ключом является добавление документов в индекс с нормализацией текста. В этом руководстве мы покажем, как настроить GroupDocs.Search для Java, чтобы каждый документ, который вы индексируете, автоматически приводился к нижнему регистру (или преобразовывался другим способом) во время индексации, гарантируя результаты без учёта регистра без дополнительной логики во время запроса. + +## Краткие ответы +- **Что означает “add documents to index”?** Это загрузка исходных файлов в структуру данных, доступную для поиска, чтобы их можно было запросить позже. +- **Зачем использовать замену символов?** Это нормализует каждый символ — обычно до нижнего регистра — чтобы поиск автоматически игнорировал различия в регистре. +- **Нужна ли лицензия?** Бесплатная пробная версия подходит для разработки; полная лицензия требуется для продакшн‑развёртываний. +- **Какая версия Java требуется?** Java 8 или новее; библиотека оптимизирована для Java 11+ для лучшей производительности. +- **Можно ли переключиться на поиск с учётом регистра при необходимости?** Да — параметры поиска позволяют включать чувствительность к регистру для отдельного запроса. + +## Что означает “add documents to index” в GroupDocs.Search? + +Загружайте ваши исходные файлы (PDF, DOCX, TXT и т.д.) в поисковый индекс, чтобы движок мог быстро их извлекать. Добавление документов в индекс разбирает каждый файл, извлекает чистый текст и сохраняет его в оптимизированной структуре данных, обеспечивая быстрый поиск. + +## Почему включать замену символов во время индексации? + +Замена символов преобразует каждый символ в предопределённый эквивалент — чаще всего в нижний регистр — во время построения индекса. Это гарантирует, что различия в написании, диакритических знаках или специфических для локали символах не влияют на результаты поиска. Нормализуя текст при индексации, движок может сопоставлять запросы с единым набором токенов, обеспечивая быстрый и надёжный поиск без учёта регистра без дополнительной обработки при каждом поиске. + +## Предварительные требования +- **GroupDocs.Search for Java** версии 25.4 или новее (библиотека поддерживает более 30 форматов файлов и может индексировать документы в сотни страниц без загрузки всего файла в память). +- **Java Development Kit (JDK)** 8 или новее, установленный на системе. +- Базовое знакомство с **Maven** (или возможность добавить JAR‑файлы вручную). + +## Настройка GroupDocs.Search для Java + +### Настройка Maven +Добавьте репозиторий GroupDocs и зависимость в ваш `pom.xml`: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### Прямое скачивание +Если вы предпочитаете не использовать Maven, загрузите последний JAR с официального сайта: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Приобретение лицензии +- **Бесплатная пробная версия** – скачайте пробную лицензию, чтобы начать экспериментировать. +- **Временная лицензия** – запросите расширенную тестовую лицензию через портал GroupDocs. +- **Полная лицензия** – приобретите производственную лицензию, когда будете готовы к запуску. + +### Базовая инициализация (Создание индекса) +Следующий фрагмент кода создаёт папку индекса и включает замену символов: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## Руководство по реализации + +### Включение замены символов в настройках индекса +Активация этой функции заставляет движок заменять символы во время индексации, что является ключевым шагом для поведения без учёта регистра. + +#### Шаг 1: Настройка `IndexSettings` +`IndexSettings` — объект конфигурации, управляющий тем, как индекс хранит и обрабатывает текст. Установив `useCharacterReplacements` в **true**, вы включаете автоматическое приведение к нижнему регистру (или любую пользовательскую карту, которую вы предоставите). + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### Настройка замен символов +Сопоставьте каждый символ с его эквивалентом в нижнем регистре (или любой другой пользовательской заменой, которая вам нужна). + +#### Шаг 2: Определение и добавление пар замен +Словарь замен содержит пары, такие как `'A' → 'a'`, `'É' → 'e'` и т.д. Добавление этих пар до индексации гарантирует, что каждый токен будет нормализован. + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### Индексация документов +Теперь, когда индекс готов, вы можете **add documents to index** из любой папки. + +#### Шаг 3: Добавление документов для индексации +GroupDocs.Search сканирует целевой каталог, извлекает текст из каждого поддерживаемого типа файла, применяет карту замен и записывает токены в хранилище индекса. + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### Выполнение поиска с учётом регистра (необязательно) + +#### Шаг 4: Выполнение поисков с учётом регистра +`SearchOptions` настраивает поведение запроса, например, переключение чувствительности к регистру, позволяя точно контролировать, как выполняются поиски. +`SearchOptions.setUseCaseSensitiveSearch(true)` заставляет движок рассматривать символы верхнего и нижнего регистра как разные в конкретном запросе, переопределяя поведение поиска без учёта регистра по умолчанию. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## Практические применения +1. **Маркетинговые кампании** – нормализуйте названия продуктов, чтобы команды продаж могли находить материалы без беспокойства о регистре. +2. **Служба поддержки** – обеспечьте работу поисковых полей справочного центра, которые возвращают правильную статью независимо от того, введёт пользователь «login» или «Login». +3. **Каталоги электронной коммерции** – гарантируйте, что покупатели найдут товары независимо от того, как они вводят названия, повышая коэффициент конверсии. + +## Соображения по производительности +- **Организуйте исходные файлы** – упорядоченная иерархия папок сокращает время сканирования во время шага **add documents to index**. +- **Контролируйте память** – индексация больших корпусов может потреблять значительный объём ОЗУ; обработка файлов партиями по 500 – 1 000 элементов удерживает использование кучи в пределах контроля. +- **Асинхронная индексация** – при поддержке запускайте индексацию в фоновом потоке, чтобы UI оставался отзывчивым и не блокировал пользовательские операции. + +## Распространённые проблемы и их устранение +| Симптом | Вероятная причина | Решение | +|---------|-------------------|--------| +| Нет результатов для известного термина | Замена символов не включена | Проверьте `settings.setUseCharacterReplacements(true)` и убедитесь, что карта замен содержит необходимые символы. | +| Ошибка «Out‑of‑memory» во время индексации | Индексация слишком большого количества крупных файлов одновременно | Индексируйте небольшими партиями или увеличьте размер кучи JVM (`-Xmx4g`). | +| Поиск возвращает результаты с учётом регистра неожиданно | Был установлен `SearchOptions.setUseCaseSensitiveSearch(true)` | Удалите или установите `false` для поведения без учёта регистра по умолчанию. | +| Время загрузки индекса превышает ожидания | Неэффективная структура папок или отсутствие SSD | Переструктурируйте файлы, удалите неиспользуемые документы и храните индекс на быстром SSD. | +| Специальные символы игнорируются | В карте замен отсутствуют записи Unicode | Добавьте сопоставления для символов вроде “é”, “ß”, “ø” к их желаемым эквивалентам. | + +## Часто задаваемые вопросы + +**В: Как обрабатывать специальные символы (например, “é”, “ß”) во время индексации?** +О: Включите эти символы в вашу карту замен, сопоставив их с ASCII‑эквивалентами или оставив без изменений в зависимости от требований поиска. + +**В: Можно ли ограничить замену символов конкретным языком?** +О: Да. Создайте пользовательский массив замен, содержащий только символы целевого языка, перед добавлением его в словарь. + +**В: Что делать, если индексу требуется слишком много времени для загрузки?** +О: Оптимизируйте структуру папок, удалите ненужные файлы и храните индекс на высокоскоростном SSD. Инкрементальная индексация также снижает нагрузку при загрузке. + +**В: Можно ли отменить замену символов после индексации?** +О: Нет. Замены фиксируются в индексированных данных; для изменения необходимо перестроить индекс с новыми настройками. + +**В: Где найти более подробную документацию API?** +О: Официальные документы и справочник API предоставляют исчерпывающие сведения (см. раздел «Ресурсы» ниже). + +## Ресурсы +- [Документация](https://docs.groupdocs.com/search/java/) +- [Справочник API](https://reference.groupdocs.com/search/java) +- [Скачать GroupDocs.Search](https://releases.groupdocs.com/search/java/) +- [Репозиторий GitHub](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [Форум бесплатной поддержки](https://forum.groupdocs.com/c/search/10) +- [Информация о временной лицензии](https://purchase.groupdocs.com/temporary-license/) + +--- + +**Последнее обновление:** 2026-07-31 +**Тестировано с:** GroupDocs.Search 25.4 for Java +**Автор:** GroupDocs + +## Связанные руководства + +- [Замена символов в GroupDocs.Search Java: Полное руководство по улучшению текстового поиска и индексации](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [Add documents to index: поиск с учётом регистра в Java с GroupDocs](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [Как добавить документы в индекс с помощью GroupDocs.Search для Java](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/russian/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/russian/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..6432ec2af --- /dev/null +++ b/content/russian/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,307 @@ +--- +date: '2026-07-31' +description: Узнайте, как создать надёжное .NET‑логирование с помощью GroupDocs, реализовав + настраиваемый консольный регистратор и используя встроенный FileLogger для эффективного + мониторинга. +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: Узнайте, как создать надёжное .NET‑логирование с помощью GroupDocs, + реализовав настраиваемый консольный регистратор и используя встроенный FileLogger + для эффективного мониторинга. +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: Создайте надёжный .NET‑логгер с GroupDocs Console Logger +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: Создайте надёжный .NET‑логгер с GroupDocs Console Logger +type: docs +url: /ru/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# Создайте надёжное .NET логирование с консольным логгером GroupDocs + +## Введение + +Вы сталкиваетесь с трудностями отслеживания ошибок и операций трассировки в ваших .NET приложениях? **Create robust .NET logging** является необходимым для мониторинга производительности, отладки проблем и поддержания плавной работы. Этот учебник проведёт вас через создание пользовательского консольного логгера с использованием GroupDocs.Search, а также покажет, как интегрировать GroupDocs.Redaction для .NET. В конце вы получите прозрачное, поддерживаемое решение логирования, которое легко впишется в ваш существующий код. + +## Быстрые ответы +- **Что делает пользовательский логгер?** Записывает записи журнала напрямую в консоль для мгновенной обратной связи во время разработки. +- **Какой компонент GroupDocs обеспечивает файловое логирование?** Встроенный класс `FileLogger` обрабатывает постоянные файлы журнала. +- **Нужна ли лицензия?** Временная лицензия подходит для тестирования; полная лицензия требуется для продакшна. +- **Какие версии .NET поддерживаются?** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **Является ли решение потокобезопасным?** Да — как `ConsoleLogger`, так и `FileLogger` разработаны для одновременного использования. + +## Что такое «create robust .NET logging»? +**Create robust .NET logging** означает создание надёжного, высокопроизводительного конвейера логирования, который фиксирует ошибки, предупреждения и информационные сообщения на всех уровнях приложения. С GroupDocs вы можете достичь этого, используя как консольные, так и файловые цели, при этом сохраняя простую конфигурацию. + +## Почему использовать GroupDocs для .NET логирования? +GroupDocs поддерживает **30+ .NET платформ** и может обрабатывать документы до **2 GB** без заметного снижения производительности. Его API логирования легковесны, потокобезопасны и бесшовно интегрируются с существующими шаблонами обработки исключений, предоставляя проверенное решение корпоративного уровня. + +## Предпосылки +- **Необходимые библиотеки и версии:** GroupDocs.Search для .NET и GroupDocs.Redaction для .NET (последние совместимые выпуски). +- **Настройка окружения:** Visual Studio 2022 или любой совместимый с .NET IDE. +- **Требования к знаниям:** Знание синтаксиса C# и базовых концепций логирования. + +## Настройка GroupDocs.Redaction для .NET + +Сначала добавьте GroupDocs.Redaction в ваш проект. Выберите метод, который лучше всего подходит вашему рабочему процессу. + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +Search for “GroupDocs.Redaction” and install the latest version. +Найдите “GroupDocs.Redaction” и установите последнюю версию. + +### Приобретение лицензии + +Чтобы начать, вы можете получить временную лицензию или купить полную. Это позволит вам исследовать все функции без ограничений. Посетите [GroupDocs' official site](https://purchase.groupdocs.com/temporary-license/) для получения более подробной информации о получении лицензии. + +### Базовая инициализация и настройка + +Класс `Redactor` предоставляет API для изменения и редактирования содержимого в поддерживаемых документах. +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## Руководство по реализации + +### Как реализовать пользовательский консольный логгер с GroupDocs? + +Загрузите ваш пользовательский логгер, создав экземпляр `ConsoleLogger` и передав его в `SearchOptions` или любой компонент GroupDocs, принимающий `ILogger`. Логгер записывает каждое сообщение в `Console.WriteLine`, предоставляя вам возможность в реальном времени видеть, что делает библиотека, и помогает быстро обнаруживать проблемы во время разработки. + +Класс `ConsoleLogger` реализует `ILogger` для записи сообщений журнала непосредственно в консоль. +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Шаг 1: Определите ваш пользовательский логгер** +Создайте новый класс с именем `ConsoleLogger`: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Шаг 2: Интеграция с GroupDocs.Search** + +`SearchOptions` настраивает поведение поиска и принимает `ILogger` для логирования. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Что такое FileLogger и когда его использовать? + +Класс `FileLogger` реализует `ILogger` и сохраняет записи журнала в файл на диске, что делает его идеальным для производственных сред, где требуются аудиторские следы. Класс `FileLogger`, предоставляемый GroupDocs, записывает записи журнала в указанный файл на диске, что идеально подходит для производственных сред, где необходимы постоянные аудиторские следы. Вы можете настроить ротацию журналов, ограничения размера файлов и уровни логирования в соответствии с вашими операционными требованиями. + +Класс `FileLogger` реализует `ILogger` и сохраняет записи журнала в файл на диске. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Почему выбирать GroupDocs для .NET логирования? + +GroupDocs предоставляет **измеримое** преимущество: он поддерживает **более 50 форматов вывода** и может обрабатывать **многосотстраничные документы** без загрузки всего файла в память. Его инфраструктура логирования добавляет менее **2 ms** накладных расходов на запись, обеспечивая оптимальную производительность даже при высокой нагрузке. + +## Практические применения + +Ниже приведены практические сценарии, где эти техники логирования проявляют себя: + +1. **Мониторинг приложений:** Используйте `ConsoleLogger` во время разработки, чтобы видеть живую диагностику. +2. **Аудиторские следы:** Разверните `FileLogger` для поддержания журналов соответствующего уровня для регуляторных отчетов. +3. **Отладка:** Используйте подробные сообщения трассировки, чтобы точно определить проблемы в сложных конвейерах поиска. +4. **Анализ производительности:** Анализируйте метки времени в журналах, чтобы выявлять узкие места и оптимизировать использование ресурсов. + +## Соображения по производительности + +Чтобы логирование было быстрым и эффективным: + +- **Ограничьте детализацию журналов:** Установите уровень логгера на `Info` или `Warning` в продакшн, чтобы избежать избыточного ввода‑вывода. +- **Эффективное использование ресурсов:** Настройте `FileLogger` с максимальным размером файла 10 MB и включите автоматическую ротацию. +- **Управление памятью:** Освобождайте экземпляры логгеров с помощью блоков `using` или явных вызовов `Dispose()`, чтобы быстро освобождать ресурсы. + +## Часто задаваемые вопросы + +**Q:** Можно ли использовать пользовательский консольный логгер в многопоточной приложении? +**A:** Да — как `ConsoleLogger`, так и `FileLogger` потокобезопасны, поэтому вы можете вести журнал из параллельных задач без условий гонки. + +**Q:** Нужна ли отдельная лицензия для GroupDocs.Search и GroupDocs.Redaction? +**A:** Одна лицензия GroupDocs покрывает все модули, включая Search и Redaction, упрощая закупку. + +**Q:** Как изменить расположение файла журнала для FileLogger? +**A:** Установите свойство `LogFilePath` при создании экземпляра `FileLogger`, например, `new FileLogger("C:\\Logs\\app.log")`. + +**Q:** Какие уровни логирования поддерживает GroupDocs? +**A:** Библиотека предоставляет уровни `Debug`, `Info`, `Warning`, `Error` и `Critical`, позволяя детально управлять выводом. + +**Q:** Можно ли одновременно комбинировать консольное и файловое логирование? +**A:** Конечно — создайте составной логгер, который перенаправляет сообщения и в `ConsoleLogger`, и в `FileLogger` для двойной видимости. + +## Ресурсы + +- [Документация GroupDocs Redaction](https://docs.groupdocs.com/search/net/) +- [Справочник API](https://reference.groupdocs.com/redaction/net) +- [Скачать библиотеки GroupDocs](https://releases.groupdocs.com/search/net/) +- [Бесплатный форум поддержки](https://forum.groupdocs.com/c/search/10) +- [Получение временной лицензии](https://purchase.groupdocs.com/temporary-license/) + +## Заключение + +В этом руководстве мы показали, как **create robust .NET logging** путем создания пользовательского консольного логгера и использования встроенного `FileLogger` от GroupDocs. Эти инструменты предоставляют вам возможность видеть данные в реальном времени во время разработки и надёжные, сохраняемые журналы для продакшна. Исследуйте различные конфигурации уровней логирования, экспериментируйте с составными логгерами и интегрируйте решение в более крупные сервисы для полной наблюдаемости стека. + +**Следующие шаги** + +- Тестируйте различные настройки уровней логирования, чтобы найти оптимальный баланс между детализацией и производительностью. +- Добавьте структурированное логирование (вывод JSON) в `FileLogger` для более лёгкой интеграции в платформы анализа журналов. +- Исследуйте другие модули GroupDocs, такие как Search и Annotation, чтобы расширить ваш конвейер обработки документов. + +--- + +**Последнее обновление:** 2026-07-31 +**Тестировано с:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**Автор:** GroupDocs + +--- + +## Связанные учебники + +- [Учебники по обработке исключений и логированию для GroupDocs.Search .NET](/search/net/exception-handling-logging/) +- [Реализация GroupDocs.Search и Redaction в .NET для управления документами](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [Мастерство GroupDocs Search и Redaction в .NET: продвинутое управление документами](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/spanish/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/spanish/java/searching/groupdocs-search-java-regex-tutorial/_index.md new file mode 100644 index 000000000..e0fb49aac --- /dev/null +++ b/content/spanish/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -0,0 +1,234 @@ +--- +date: '2026-07-31' +description: Aprende a buscar con regex en Java usando GroupDocs.Search. Este tutorial + paso a paso muestra la configuración, la creación del índice y ejemplos de consultas + regex para un análisis rápido de documentos de texto. +keywords: +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: Cómo buscar con regex en Java usando GroupDocs.Search permite una + coincidencia de patrones rápida en PDFs, Word y archivos de texto. Sigue esta guía + para configurar, indexar documentos y ejecutar consultas regex potentes. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: Cómo buscar con regex en Java con la guía de GroupDocs.Search +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: Cómo buscar con regex en Java con la guía de GroupDocs.Search +type: docs +url: /es/java/searching/groupdocs-search-java-regex-tutorial/ +weight: 1 +--- + +# Cómo buscar con expresiones regulares en Java con GroupDocs.Search + +Buscar entre miles de documentos de texto puede sentirse como buscar una aguja en un pajar. **Cómo buscar con expresiones regulares** en Java se vuelve sencillo cuando combina el potente motor de expresiones regulares del lenguaje con GroupDocs.Search, una biblioteca que crea un índice para coincidencias de patrones ultrarrápidas. En los próximos minutos verá cómo instalar la biblioteca, crear un índice, agregar archivos y ejecutar consultas regex tanto basadas en texto como orientadas a objetos. Al final estará listo para integrar una búsqueda robusta basada en patrones en cualquier aplicación Java. + +## Respuestas rápidas +- **¿Cuál es la biblioteca principal?** GroupDocs.Search for Java +- **¿Cómo comienzo?** Agregue la dependencia Maven e instancie un objeto `Index` +- **¿Puedo filtrar contenido con regex?** Sí – use consultas regex para escenarios de filtrado de contenido +- **¿Necesito una licencia?** Se requiere una prueba gratuita o licencia temporal para uso en producción +- **¿Qué versión de JDK es compatible?** Java 8 o superior + +## ¿Qué es la búsqueda con expresiones regulares? +La búsqueda regex le permite localizar patrones como fechas, direcciones de correo electrónico o caracteres repetidos en muchos archivos con una sola operación. Convierte una consulta de texto plano en un escáner potente basado en reglas que puede extraer o bloquear contenido al instante. + +## ¿Por qué usar GroupDocs.Search para búsquedas con expresiones regulares? +GroupDocs.Search indexa los documentos una vez y luego reutiliza ese índice para cada consulta, ofreciendo **hasta 10× más rápido** que el escaneo directo de archivos. La biblioteca soporta **más de 30 formatos de archivo** (PDF, DOCX, XLSX, PPTX, TXT, HTML y más) y puede manejar archivos de cientos de páginas sin cargar todo el archivo en memoria. + +## Requisitos previos +- Java Development Kit (JDK) 8 o superior +- Maven para la gestión de dependencias +- Familiaridad básica con expresiones regulares de Java + +### Bibliotecas y dependencias requeridas +Agregue GroupDocs.Search a su proyecto Maven: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +Alternativamente, descargue el JAR más reciente desde [lanzamientos de GroupDocs.Search para Java](https://releases.groupdocs.com/search/java/). + +### Obtención de licencia +Obtenga una prueba gratuita o una licencia temporal de [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) y cárguela al iniciar la aplicación. + +## Configuración de GroupDocs.Search para Java + +### Información de instalación +1. **Maven Integration:** Agregue el repositorio y la dependencia mostrados arriba a su `pom.xml`. +2. **Direct Download:** Coloque los archivos JAR en el classpath de su proyecto. +3. **License Application:** Cargue el archivo de licencia al iniciar la aplicación. + +```java +import com.groupdocs.search.*; + +public class SearchSetup { + public static void main(String[] args) { + // Initialize the index by specifying a directory. + String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; + Index index = new Index(indexFolder); + + System.out.println("Index created successfully at: " + indexFolder); + } +} +``` + +## Componentes principales +La clase `Index` es el componente central que almacena los tokens buscables extraídos de sus documentos. Permite una búsqueda rápida de cualquier término o patrón sin volver a leer los archivos originales. + +## Cómo crear un índice +Crear un índice es sencillo: instancie la clase `Index` con la ruta de una carpeta donde se almacenarán los archivos del índice. El constructor crea los archivos de base de datos necesarios en el primer uso y prepara el motor para agregar y buscar documentos. Una vez creado, reutilice el mismo índice para todas las consultas. + +```java +String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; +Index index = new Index(indexFolder); +``` + +## Cómo agregar documentos +Para que un archivo sea buscable, llame a `index.add` con una instancia de `Document` (o `DocumentInfo`) que apunte a la ruta del archivo. La biblioteca analiza el contenido, extrae tokens y los almacena en el índice. Esta operación puede realizarse para archivos individuales o por lotes, y las actualizaciones se fusionan de forma incremental. + +```java +index.add("YOUR_DOCUMENT_DIRECTORY"); +system.out.println("Documents added to the index."); +``` + +## Cómo realizar una búsqueda de expresiones regulares en forma de texto +`RegexQuery` define una consulta de búsqueda basada en expresiones regulares. Cargue un `RegexQuery` con un patrón de texto plano y páselo al método `search` del `Index`. El motor evalúa el patrón contra los tokens indexados y devuelve referencias a los documentos coincidentes, haciendo que las búsquedas puntuales sean rápidas y simples. + +```java +String query1 = "^((.)\\2{1,})"; +``` + +## Cómo realizar una búsqueda de expresiones regulares en forma de objeto +`RegexQuery` también puede construirse como un objeto y reutilizarse en múltiples búsquedas. Defina la consulta una vez, configure opciones como insensibilidad a mayúsculas o coincidencia difusa, e invoque `index.search` repetidamente. Este enfoque mejora el rendimiento cuando el mismo patrón se aplica a muchos conjuntos de documentos diferentes. + +```java +SearchResult result1 = index.search(query1); +system.out.println("Number of occurrences found: " + result1.getDocumentCount()); +``` + +## Casos de uso de regex para filtrado de contenido +Puede emplear regex para bloquear o marcar automáticamente contenido que coincida con ciertos patrones, como: + +- Detección de caracteres repetidos para filtrado de spam +- Búsqueda de secuencias similares a tarjetas de crédito para verificaciones de privacidad de datos +- Extracción de fechas o IDs para procesamiento posterior + +## Aplicaciones prácticas +1. **Sistemas de gestión documental:** localizar contratos, facturas o políticas mediante patrones (p. ej., números de factura). +2. **Moderación de contenido:** aplicar reglas regex para moderar texto generado por usuarios en foros o aplicaciones de chat. +3. **Extracción de datos:** obtener datos estructurados como números de orden de PDFs o archivos Word no estructurados. + +## Consideraciones de rendimiento +- **Actualizaciones del índice:** llame a `index.add` siempre que los archivos fuente cambien para mantener los resultados actualizados. +- **Gestión de memoria:** para corpora que superen 1 millón de documentos, habilite la indexación incremental para mantener el uso del heap bajo control. +- **Diseño de regex:** mantenga los patrones concisos; un patrón como `\d{4}-\d{2}-\d{2}` se ejecuta 3× más rápido que una expresión con muchos comodines como `.*`. + +## Conclusión +Ahora sabe **cómo buscar con expresiones regulares** en Java usando GroupDocs.Search, desde la instalación de la biblioteca y la creación del índice hasta la ejecución de consultas tanto basadas en texto como orientadas a objetos. Estas técnicas le permiten añadir una búsqueda rápida y consciente de patrones a cualquier aplicación Java, ya sea que esté construyendo un portal de documentos, un escáner de cumplimiento o una canalización de minería de datos. + +## Preguntas frecuentes + +**Q:** ¿Cuál es la diferencia entre consultas regex basadas en texto y basadas en objetos en GroupDocs.Search? +**A:** Las consultas basadas en texto son rápidas de una sola línea, mientras que las consultas basadas en objetos proporcionan definiciones reutilizables y con tipado que pueden almacenarse y reutilizarse en múltiples búsquedas. + +**Q:** ¿Puede GroupDocs.Search indexar documentos no textuales como PDFs o archivos de Excel? +**A:** Sí, la biblioteca extrae texto buscable de PDFs, DOCX, XLSX, PPTX y más de 30 formatos adicionales. + +**Q:** ¿Cómo actualizo un índice de búsqueda existente después de agregar nuevos archivos? +**A:** Llame a `index.add` con los documentos nuevos o modificados; la biblioteca fusionará los cambios sin reconstruir todo el índice. + +**Q:** ¿Cuáles son los errores comunes al usar regex con GroupDocs.Search? +**A:** Los patrones demasiado amplios (p. ej., `.*`) pueden degradar el rendimiento, y las expresiones mal formadas pueden no devolver resultados. Siempre pruebe los patrones en un conjunto de muestra primero. + +**Q:** ¿Dónde puedo encontrar tutoriales más avanzados de GroupDocs.Search? +**A:** Visite la [Documentación de GroupDocs](https://docs.groupdocs.com/search/java/) para guías detalladas, referencias de API y proyectos de ejemplo. + +--- + +**Última actualización:** 2026-07-31 +**Probado con:** GroupDocs.Search 25.4 +**Autor:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## Tutoriales relacionados + +- [Dominar GroupDocs.Search Java: Búsqueda eficiente de documentos y gestión de índices](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [Dominar GroupDocs.Search Java: Guía de búsqueda difusa y indexación de documentos](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [Cómo indexar texto en Java con la guía de GroupDocs.Search](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/spanish/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/spanish/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..d613b0e3c --- /dev/null +++ b/content/spanish/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,280 @@ +--- +date: '2026-07-31' +description: Aprenda cómo implementar case insensitive search java añadiendo documentos + a un índice con GroupDocs.Search, usando character replacement para normalize text + durante el indexing. +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: Case insensitive search java le permite agregar documentos a un índice + y consultarlos sin preocuparse por mayúsculas y minúsculas. Esta guía muestra cómo + GroupDocs.Search normalize text durante el indexing para fast, reliable results. +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Case Insensitive Search Java – Index Docs con GroupDocs +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: Agregar documentos al índice para Case‑Insensitive Search en Java +type: docs +url: /es/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# Añadir documentos al índice para búsqueda sin distinción de mayúsculas en Java + +Cuando necesitas **case insensitive search java** que encuentre información de forma fiable sin importar cómo la escriban los usuarios, la clave es añadir documentos a un índice mientras se normaliza el texto. En este tutorial configuramos GroupDocs.Search para Java de modo que cada documento que indexas se convierta automáticamente a minúsculas (u otra transformación) durante la indexación, garantizando resultados sin distinción de mayúsculas sin lógica adicional en tiempo de consulta. + +## Respuestas rápidas +- **¿Qué significa “añadir documentos al índice”?** Significa cargar archivos fuente en una estructura de datos buscable para que puedan consultarse más tarde. +- **¿Por qué usar reemplazo de caracteres?** Normaliza cada carácter—generalmente a minúsculas—para que las búsquedas ignoren automáticamente las diferencias de mayúsculas. +- **¿Necesito una licencia?** Una prueba gratuita funciona para desarrollo; se requiere una licencia completa para entornos de producción. +- **¿Qué versión de Java se necesita?** Java 8 o superior; la biblioteca está optimizada para Java 11+ para un rendimiento óptimo. +- **¿Puedo cambiar a búsqueda sensible a mayúsculas cuando lo necesite?** Sí—las opciones de búsqueda permiten alternar la sensibilidad a mayúsculas por consulta. + +## ¿Qué es “añadir documentos al índice” en GroupDocs.Search? + +Carga tus archivos fuente (PDF, DOCX, TXT, etc.) en un índice buscable para que el motor pueda recuperarlos rápidamente. Añadir documentos a un índice analiza cada archivo, extrae el texto plano y lo almacena en una estructura de datos optimizada que permite búsquedas rápidas. + +## ¿Por qué habilitar el reemplazo de caracteres durante la indexación? + +El reemplazo de caracteres convierte cada carácter en un equivalente predefinido—más comúnmente minúsculas—mientras se construye el índice. Esto garantiza que variaciones en capitalización, diacríticos o símbolos específicos de la configuración regional no afecten los resultados de búsqueda. Al normalizar el texto en el momento de la indexación, el motor puede comparar consultas con un conjunto de tokens consistente, ofreciendo un comportamiento rápido y fiable sin distinción de mayúsculas sin procesamiento adicional en cada búsqueda. + +## Requisitos previos +- **GroupDocs.Search for Java** versión 25.4 o más reciente (la biblioteca admite más de 30 formatos de archivo y puede indexar documentos de cientos de páginas sin cargar todo el archivo en memoria). +- **Java Development Kit (JDK)** 8 o posterior instalado. +- Familiaridad básica con **Maven** (o capacidad para añadir JARs manualmente). + +## Configuración de GroupDocs.Search para Java + +### Configuración con Maven +Añade el repositorio de GroupDocs y la dependencia a tu `pom.xml`: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### Descarga directa +Si prefieres no usar Maven, descarga el JAR más reciente desde el sitio oficial: [lanzamientos de GroupDocs.Search para Java](https://releases.groupdocs.com/search/java/). + +### Obtención de licencia +- **Prueba gratuita** – descarga una licencia de prueba para comenzar a experimentar. +- **Licencia temporal** – solicita una licencia de prueba extendida desde el portal de GroupDocs. +- **Licencia completa** – adquiere una licencia de producción cuando estés listo para lanzar. + +### Inicialización básica (Crear el índice) +El siguiente fragmento crea una carpeta de índice y habilita los reemplazos de caracteres: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## Guía de implementación + +### Habilitar el reemplazo de caracteres en la configuración del índice +Activar esta función indica al motor que reemplace caracteres mientras indexa, paso esencial para el comportamiento sin distinción de mayúsculas. + +#### Paso 1: Configurar `IndexSettings` +`IndexSettings` es el objeto de configuración que controla cómo el índice almacena y procesa el texto. Al establecer `useCharacterReplacements` en **true**, activas la conversión automática a minúsculas (o cualquier mapeo personalizado que proporciones). + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### Configurar los reemplazos de caracteres +Mapea cada carácter a su equivalente en minúsculas (o a cualquier mapeo personalizado que necesites). + +#### Paso 2: Definir y añadir pares de reemplazo +El diccionario de reemplazo contiene pares como `'A' → 'a'`, `'É' → 'e'`, etc. Añadir estos pares antes de la indexación asegura que cada token se normalice. + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### Indexar documentos +Una vez que el índice está listo, puedes **añadir documentos al índice** desde cualquier carpeta. + +#### Paso 3: Añadir documentos para indexar +GroupDocs.Search escanea el directorio objetivo, extrae texto de cada tipo de archivo compatible, aplica el mapa de reemplazo y escribe los tokens en el almacenamiento del índice. + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### Realizar búsquedas sensibles a mayúsculas (opcional) + +#### Paso 4: Ejecutar búsquedas sensibles a mayúsculas +`SearchOptions` configura el comportamiento de la consulta, como alternar la sensibilidad a mayúsculas, permitiendo un control fino sobre cómo se realizan las búsquedas. +`SearchOptions.setUseCaseSensitiveSearch(true)` obliga al motor a tratar los caracteres en mayúsculas y minúsculas como distintos durante una consulta específica, sobrescribiendo el comportamiento predeterminado sin distinción de mayúsculas. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## Aplicaciones prácticas +1. **Campañas de marketing** – Normaliza nombres de productos para que los equipos de ventas encuentren activos sin preocuparse por mayúsculas. +2. **Soporte al cliente** – Potencia cajas de búsqueda en mesas de ayuda que devuelvan el artículo correcto tanto si el usuario escribe “login” como “Login”. +3. **Catálogos de comercio electrónico** – Garantiza que los compradores encuentren artículos sin importar cómo escriban los títulos de los productos, mejorando la tasa de conversión. + +## Consideraciones de rendimiento +- **Organizar archivos fuente** – Una jerarquía de carpetas ordenada reduce el tiempo de escaneo durante el paso de **añadir documentos al índice**. +- **Monitorear memoria** – Indexar grandes corpus puede consumir RAM significativa; procesar archivos en lotes de 500 – 1 000 elementos mantiene el uso del heap bajo control. +- **Indexación asíncrona** – Cuando sea compatible, ejecuta la indexación en un hilo de fondo para mantener la UI responsiva y evitar bloquear operaciones de usuario. + +## Problemas comunes y solución de errores +| Síntoma | Causa probable | Solución | +|---------|----------------|----------| +| No se devuelven resultados para un término conocido | Reemplazo de caracteres no habilitado | Verifica `settings.setUseCharacterReplacements(true)` y que el mapa de reemplazo incluya los caracteres necesarios. | +| Error de falta de memoria durante la indexación | Indexación de demasiados archivos grandes a la vez | Indexa en lotes más pequeños o aumenta el heap de JVM (`-Xmx4g`). | +| La búsqueda devuelve resultados sensibles a mayúsculas inesperadamente | `SearchOptions.setUseCaseSensitiveSearch(true)` estaba activado | Elimina o establece a `false` para el comportamiento predeterminado sin distinción de mayúsculas. | +| El tiempo de carga del índice supera lo esperado | Disposición de carpetas ineficiente o SSD no utilizado | Reorganiza los archivos, elimina documentos no usados y almacena el índice en un SSD rápido. | +| Los caracteres especiales se ignoran | Falta de entradas Unicode en el mapa de reemplazo | Añade mapeos para caracteres como “é”, “ß”, “ø” a sus equivalentes deseados. | + +## Preguntas frecuentes + +**P: ¿Cómo manejo caracteres especiales (p. ej., “é”, “ß”) durante la indexación?** +R: Incluye esos caracteres en tu mapa de reemplazo, asignándolos a sus equivalentes ASCII o manteniéndolos sin cambios según los requisitos de búsqueda. + +**P: ¿Puedo limitar el reemplazo de caracteres a un idioma específico?** +R: Sí. Construye una matriz de reemplazo personalizada que contenga solo los caracteres del idioma objetivo antes de añadirla al diccionario. + +**P: ¿Qué hago si el índice tarda mucho en cargarse?** +R: Optimiza la estructura de carpetas, elimina archivos innecesarios y almacena el índice en un SSD de alta velocidad. La indexación incremental también reduce la sobrecarga de carga. + +**P: ¿Es posible revertir los reemplazos de caracteres después de indexar?** +R: No. Los reemplazos quedan incorporados en los datos indexados; debes reconstruir el índice con nuevas configuraciones para cambiarlos. + +**P: ¿Dónde encuentro documentación API más detallada?** +R: La documentación oficial y la referencia API ofrecen detalles exhaustivos (ver Recursos a continuación). + +## Recursos +- [Documentación](https://docs.groupdocs.com/search/java/) +- [Referencia API](https://reference.groupdocs.com/search/java) +- [Descargar GroupDocs.Search](https://releases.groupdocs.com/search/java/) +- [Repositorio en GitHub](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [Foro de soporte gratuito](https://forum.groupdocs.com/c/search/10) +- [Información sobre licencias temporales](https://purchase.groupdocs.com/temporary-license/) + +--- + +**Última actualización:** 2026-07-31 +**Probado con:** GroupDocs.Search 25.4 para Java +**Autor:** GroupDocs + +--- + +## Tutoriales relacionados + +- [Reemplazo de caracteres en GroupDocs.Search Java: Guía completa para mejorar la búsqueda de texto y la indexación](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [Añadir documentos al índice: búsqueda sensible a mayúsculas en Java con GroupDocs](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [Cómo añadir documentos al índice con GroupDocs.Search para Java](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/spanish/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/spanish/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..0afbc4897 --- /dev/null +++ b/content/spanish/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,305 @@ +--- +date: '2026-07-31' +description: Aprenda cómo crear un registro robusto en .NET usando GroupDocs mediante + la implementación de un logger de consola personalizado y aprovechando el FileLogger + incorporado para una monitorización eficaz. +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: Aprenda cómo crear un registro robusto en .NET usando GroupDocs mediante + la implementación de un logger de consola personalizado y aprovechando el FileLogger + incorporado para una monitorización eficaz. +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: Crear registro robusto en .NET con el Console Logger de GroupDocs +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: Crear registro robusto en .NET con el Console Logger de GroupDocs +type: docs +url: /es/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# Crear un registro .NET robusto con el registrador de consola GroupDocs + +## Introducción + +¿Tiene dificultades para rastrear errores y operaciones de trazado en sus aplicaciones .NET? **Crear un registro .NET robusto** es esencial para monitorear el rendimiento, depurar problemas y mantener una operación fluida. Este tutorial le guía a través de la creación de un registrador de consola personalizado usando GroupDocs.Search mientras también muestra cómo integrar GroupDocs.Redaction para .NET. Al final, tendrá una solución de registro transparente y mantenible que encaja perfectamente en su base de código existente. + +## Respuestas rápidas +- **¿Qué hace el registrador personalizado?** Escribe entradas de registro directamente en la consola para obtener retroalimentación instantánea durante el desarrollo. +- **¿Qué componente de GroupDocs proporciona registro en archivo?** La clase integrada `FileLogger` maneja archivos de registro persistentes. +- **¿Necesito una licencia?** Una licencia temporal funciona para pruebas; se requiere una licencia completa para producción. +- **¿Qué versiones de .NET son compatibles?** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **¿La solución es segura para subprocesos?** Sí—tanto `ConsoleLogger` como `FileLogger` están diseñados para uso concurrente. + +## Qué es “crear un registro .NET robusto”? +**Crear un registro .NET robusto** significa establecer una canalización de registro confiable y de alto rendimiento que captura errores, advertencias y mensajes informativos en todas las capas de una aplicación. Con GroupDocs, puede lograr esto usando tanto objetivos de consola como de archivo mientras mantiene la configuración simple. + +## ¿Por qué usar GroupDocs para el registro .NET? +GroupDocs admite **más de 30 plataformas .NET** y puede procesar documentos de hasta **2 GB** sin una disminución de rendimiento notable. Sus APIs de registro son ligeras, seguras para subprocesos y se integran sin problemas con los patrones existentes de manejo de excepciones, brindándole una solución probada de nivel empresarial. + +## Requisitos previos + +- **Bibliotecas y versiones requeridas:** GroupDocs.Search para .NET y GroupDocs.Redaction para .NET (últimas versiones compatibles). +- **Configuración del entorno:** Visual Studio 2022 o cualquier IDE compatible con .NET. +- **Requisitos de conocimiento:** Familiaridad con la sintaxis de C# y conceptos básicos de registro. + +## Configuración de GroupDocs.Redaction para .NET + +Primero, agregue GroupDocs.Redaction a su proyecto. Elija el método que mejor se adapte a su flujo de trabajo. + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +Busque “GroupDocs.Redaction” e instale la última versión. + +### Obtención de licencia + +Para comenzar, puede obtener una licencia temporal o comprar una completa. Esto le permitirá explorar todas las funciones sin limitaciones. Visite [sitio oficial de GroupDocs](https://purchase.groupdocs.com/temporary-license/) para obtener más detalles sobre cómo adquirir su licencia. + +### Inicialización y configuración básica + +La clase `Redactor` proporciona APIs para modificar y redactar contenido en documentos compatibles. +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## Guía de implementación + +### Cómo implementar un registrador de consola personalizado con GroupDocs? + +Cargue su registrador personalizado creando una instancia de `ConsoleLogger` y pasándola a `SearchOptions` o a cualquier componente de GroupDocs que acepte un `ILogger`. El registrador escribe cada mensaje en `Console.WriteLine`, brindándole visibilidad en tiempo real de lo que la biblioteca está haciendo, y le ayuda a detectar rápidamente problemas durante el desarrollo. + +La clase `ConsoleLogger` implementa `ILogger` para escribir mensajes de registro directamente en la consola. +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Paso 1: Defina su registrador personalizado** +Cree una nueva clase llamada `ConsoleLogger`: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Paso 2: Integrar con GroupDocs.Search** + +`SearchOptions` configura el comportamiento de búsqueda y acepta un `ILogger` para el registro. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Qué es FileLogger y cuándo usarlo? + +La clase `FileLogger` implementa `ILogger` y persiste las entradas de registro en un archivo en disco, lo que la hace ideal para entornos de producción donde se requieren auditorías. La clase `FileLogger` proporcionada por GroupDocs escribe las entradas de registro en un archivo especificado en disco, lo que la hace perfecta para entornos de producción donde necesita auditorías persistentes. Puede configurar la rotación de registros, límites de tamaño de archivo y niveles de registro para adaptarse a sus requisitos operativos. + +La clase `FileLogger` implementa `ILogger` y persiste las entradas de registro en un archivo en disco. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### ¿Por qué elegir GroupDocs para el registro .NET? + +GroupDocs ofrece una ventaja **cuantificada**: admite **más de 50 formatos de salida** y puede manejar **documentos de cientos de páginas** sin cargar todo el archivo en memoria. Su infraestructura de registro agrega menos de **2 ms** de sobrecarga por entrada de registro, garantizando que el rendimiento siga siendo óptimo incluso bajo carga pesada. + +## Aplicaciones prácticas + +A continuación se presentan algunos escenarios prácticos donde estas técnicas de registro sobresalen: + +1. **Monitoreo de aplicaciones:** Use `ConsoleLogger` durante el desarrollo para ver diagnósticos en tiempo real. +2. **Auditorías:** Deploy `FileLogger` para mantener registros de nivel de cumplimiento para informes regulatorios. +3. **Depuración:** Aproveche los mensajes de traza detallados para identificar problemas en pipelines de búsqueda complejos. +4. **Análisis de rendimiento:** Examine las marcas de tiempo de los registros para identificar cuellos de botella y optimizar el uso de recursos. + +## Consideraciones de rendimiento + +Para mantener el registro rápido y eficiente: + +- **Limitar la verbosidad del registro:** Establezca el nivel del registrador a `Info` o `Warning` en producción para evitar I/O excesivo. +- **Uso eficiente de recursos:** Configure `FileLogger` con un tamaño máximo de archivo de 10 MB y habilite la rotación automática. +- **Gestión de memoria:** Deseche las instancias del registrador con bloques `using` o llamadas explícitas a `Dispose()` para liberar recursos rápidamente. + +## Preguntas frecuentes + +**P:** ¿Puedo usar el registrador de consola personalizado en una aplicación multihilo? +**R:** Sí—tanto `ConsoleLogger` como `FileLogger` son seguros para subprocesos, por lo que puede registrar desde tareas paralelas sin condiciones de carrera. + +**P:** ¿Necesito una licencia separada para GroupDocs.Search y GroupDocs.Redaction? +**R:** Una única licencia de GroupDocs cubre todos los módulos, incluidos Search y Redaction, simplificando la adquisición. + +**P:** ¿Cómo cambio la ubicación del archivo de registro para FileLogger? +**R:** Establezca la propiedad `LogFilePath` al crear la instancia de `FileLogger`, por ejemplo, `new FileLogger("C:\\Logs\\app.log")`. + +**P:** ¿Qué niveles de registro admite GroupDocs? +**R:** La biblioteca proporciona los niveles `Debug`, `Info`, `Warning`, `Error` y `Critical`, lo que permite un control granular sobre la salida. + +**P:** ¿Es posible combinar simultáneamente el registro en consola y en archivo? +**R:** Absolutamente—cree un registrador compuesto que reenvíe los mensajes tanto a `ConsoleLogger` como a `FileLogger` para una visibilidad dual. + +## Recursos + +- [Documentación de GroupDocs Redaction](https://docs.groupdocs.com/search/net/) +- [Referencia de API](https://reference.groupdocs.com/redaction/net) +- [Descargar bibliotecas GroupDocs](https://releases.groupdocs.com/search/net/) +- [Foro de soporte gratuito](https://forum.groupdocs.com/c/search/10) +- [Adquisición de licencia temporal](https://purchase.groupdocs.com/temporary-license/) + +## Conclusión + +En esta guía, hemos demostrado cómo **crear un registro .NET robusto** mediante la construcción de un registrador de consola personalizado y aprovechando el `FileLogger` incorporado de GroupDocs. Estas herramientas le brindan información en tiempo real durante el desarrollo y registros confiables y persistentes para producción. Explore diferentes configuraciones de niveles de registro, experimente con registradores compuestos e integre la solución en servicios más grandes para una observabilidad de extremo a extremo. + +**Próximos pasos** + +- Pruebe diferentes configuraciones de niveles de registro para encontrar el equilibrio óptimo entre detalle y rendimiento. +- Añada registro estructurado (salida JSON) a `FileLogger` para una ingestión más fácil en plataformas de análisis de registros. +- Explore otros módulos de GroupDocs, como Search y Annotation, para ampliar su canalización de procesamiento de documentos. + +--- + +**Última actualización:** 2026-07-31 +**Probado con:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**Autor:** GroupDocs + +## Tutoriales relacionados + +- [Tutoriales de manejo de excepciones y registro para GroupDocs.Search .NET](/search/net/exception-handling-logging/) +- [Implementación de GroupDocs.Search y Redaction en .NET para la gestión de documentos](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [Dominar GroupDocs Search y Redaction en .NET: Gestión avanzada de documentos](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/swedish/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/swedish/java/searching/groupdocs-search-java-regex-tutorial/_index.md new file mode 100644 index 000000000..3ebf96485 --- /dev/null +++ b/content/swedish/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -0,0 +1,234 @@ +--- +date: '2026-07-31' +description: Lär dig hur du utför regex‑sökning i Java med GroupDocs.Search. Denna + steg‑för‑steg‑handledning visar hur du ställer in, skapar index och ger exempel + på regex‑frågor för snabb textdokumentanalys. +keywords: +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: Att söka med regex i Java med GroupDocs.Search möjliggör snabb mönstermatchning + över PDF‑filer, Word och textfiler. Följ den här guiden för att konfigurera, indexera + dokument och köra kraftfulla regex‑frågor. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: Hur man söker med regex i Java med GroupDocs.Search‑guide +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: Hur man söker med regex i Java med GroupDocs.Search‑guide +type: docs +url: /sv/java/searching/groupdocs-search-java-regex-tutorial/ +weight: 1 +--- + +# Hur man söker med regex i Java med GroupDocs.Search + +Att söka igenom tusentals textdokument kan kännas som att leta efter en nål i en höstack. **Hur man söker med regex** i Java blir enkelt när du kombinerar språkets kraftfulla reguljära uttrycks‑motor med GroupDocs.Search, ett bibliotek som bygger ett index för blixtsnabb mönstermatchning. Under de kommande minuterna kommer du att se hur du installerar biblioteket, skapar ett index, lägger till filer och kör både enkla textbaserade och objektorienterade regex‑frågor. I slutet är du redo att integrera robust mönstermatchningssökning i vilken Java‑applikation som helst. + +## Snabba svar +- **Vad är det primära biblioteket?** GroupDocs.Search for Java +- **Hur kommer jag igång?** Add the Maven dependency and instantiate an `Index` object +- **Kan jag filtrera innehåll med regex?** Yes – use regex queries for content‑filtering scenarios +- **Behöver jag en licens?** A free trial or temporary license is required for production use +- **Vilken JDK-version stöds?** Java 8 or higher + +## Vad är regex‑sökning? +Regex‑sökning låter dig hitta mönster såsom datum, e‑postadresser eller upprepade tecken i många filer med ett enda sök. Det omvandlar en vanlig textfråga till en kraftfull, regelbaserad skanner som kan extrahera eller blockera innehåll i realtid. + +## Varför använda GroupDocs.Search för regex‑sökning? +GroupDocs.Search indexerar dokument en gång och återanvänder sedan det indexet för varje fråga, vilket ger **upp till 10× snabbare** sökningar jämfört med rå filskanning. Biblioteket stödjer **30+ filformat** (PDF, DOCX, XLSX, PPTX, TXT, HTML och fler) och kan hantera filer med flera hundra sidor utan att ladda hela filen i minnet. + +## Förutsättningar +- Java Development Kit (JDK) 8 eller högre +- Maven för beroendehantering +- Grundläggande kunskap om Java‑reguljära uttryck + +### Nödvändiga bibliotek och beroenden +Lägg till GroupDocs.Search i ditt Maven‑projekt: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +Alternativt kan du ladda ner den senaste JAR‑filen från [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Licensanskaffning +Skaffa en gratis provperiod eller tillfällig licens från [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) och ladda den vid applikationens start. + +## Konfigurera GroupDocs.Search för Java + +### Installationsinformation +1. **Maven‑integration:** Lägg till det ovanstående förrådet och beroendet i din `pom.xml`. +2. **Direkt nedladdning:** Placera JAR‑filerna på ditt projekts classpath. +3. **Licensanvändning:** Ladda licensfilen vid applikationens start. + +```java +import com.groupdocs.search.*; + +public class SearchSetup { + public static void main(String[] args) { + // Initialize the index by specifying a directory. + String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; + Index index = new Index(indexFolder); + + System.out.println("Index created successfully at: " + indexFolder); + } +} +``` + +## Kärnkomponenter +`Index`‑klassen är kärnkomponenten som lagrar sökbara token som extraheras från dina dokument. Den möjliggör snabb uppslagning av vilket som helst term eller mönster utan att läsa om originalfilerna. + +## Hur man skapar ett index +Att skapa ett index är enkelt: instansiera `Index`‑klassen med en mappväg där indexfilerna ska lagras. Konstruktorn skapar de nödvändiga databasfilerna vid första användning och förbereder motorn för att lägga till och söka i dokument. När det är skapat, återanvänd samma index för alla frågor. + +```java +String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; +Index index = new Index(indexFolder); +``` + +## Hur man lägger till dokument +För att göra en fil sökbar, anropa `index.add` med en `Document` (eller `DocumentInfo`)‑instans som pekar på filvägen. Biblioteket parsar innehållet, extraherar token och lagrar dem i indexet. Denna operation kan utföras för enskilda filer eller i batcher, och uppdateringar slås samman inkrementellt. + +```java +index.add("YOUR_DOCUMENT_DIRECTORY"); +system.out.println("Documents added to the index."); +``` + +## Hur man utför reguljärt uttryckssökning i textform +`RegexQuery` definierar en sökfråga baserad på reguljära uttryck. Ladda en `RegexQuery` med ett vanlig‑text‑mönster och skicka den till `search`‑metoden i `Index`. Motorn utvärderar mönstret mot de indexerade tokenen och returnerar matchande dokumentreferenser, vilket gör engångsuppslag snabba och enkla. + +```java +String query1 = "^((.)\\2{1,})"; +``` + +## Hur man utför reguljärt uttryckssökning i objektform +`RegexQuery` kan också byggas som ett objekt och återanvändas i flera sökningar. Definiera frågan en gång, konfigurera alternativ som skiftlägesokänslighet eller fuzzy‑matchning, och anropa `index.search` upprepade gånger. Detta tillvägagångssätt förbättrar prestanda när samma mönster tillämpas på många olika dokumentuppsättningar. + +```java +SearchResult result1 = index.search(query1); +system.out.println("Number of occurrences found: " + result1.getDocumentCount()); +``` + +## Användningsfall för regex‑innehållsfiltrering +Du kan använda regex för att automatiskt blockera eller flagga innehåll som matchar vissa mönster, såsom: + +- Upptäcka upprepade tecken för spam‑filtrering +- Hitta kreditkorts‑liknande sekvenser för dataskyddskontroller +- Extrahera datum eller ID för efterföljande bearbetning + +## Praktiska tillämpningar +1. **Dokumenthanteringssystem:** Hitta kontrakt, fakturor eller policys efter mönster (t.ex. fakturanummer). +2. **Innehållsmoderering:** Använd regex‑regler för att moderera användargenererad text i forum eller chatt‑appar. +3. **Dataextraktion:** Hämta strukturerad data som ordernummer från ostrukturerade PDF‑ eller Word‑filer. + +## Prestandaöverväganden +- **Indexuppdateringar:** Anropa `index.add` när källfiler ändras för att hålla resultaten aktuella. +- **Minneshantering:** För korpusar med mer än 1 miljon dokument, aktivera inkrementell indexering för att hålla heap‑användning under kontroll. +- **Regex‑design:** Håll mönster koncisa; ett mönster som `\d{4}-\d{2}-\d{2}` kör 3× snabbare än ett wildcard‑tungt uttryck som `.*`. + +## Slutsats +Du vet nu **hur man söker med regex** i Java med hjälp av GroupDocs.Search, från att installera biblioteket och skapa ett index till att utföra både textbaserade och objektorienterade frågor. Dessa tekniker låter dig lägga till snabb, mönster‑medveten sökning i vilken Java‑applikation som helst, oavsett om du bygger en dokumentportal, en efterlevnadsskanner eller en data‑utvinningspipeline. + +## Vanliga frågor + +**Q:** Vad är skillnaden mellan textbaserade och objektbaserade regex‑frågor i GroupDocs.Search? +**A:** Textbaserade frågor är snabba enradare, medan objektbaserade frågor ger återanvändbara, typ‑säkra definitioner som kan lagras och återanvändas i flera sökningar. + +**Q:** Kan GroupDocs.Search indexera icke‑textdokument som PDF‑ eller Excel‑filer? +**A:** Ja, biblioteket extraherar sökbar text från PDF, DOCX, XLSX, PPTX och över 30 andra format. + +**Q:** Hur uppdaterar jag ett befintligt sökindex efter att ha lagt till nya filer? +**A:** Anropa `index.add` med de nya eller ändrade dokumenten; biblioteket kommer att slå ihop förändringarna utan att bygga om hela indexet. + +**Q:** Vilka vanliga fallgropar finns när man använder regex med GroupDocs.Search? +**A:** Alltför breda mönster (t.ex. `.*`) kan leda till prestandaförsämring, och felaktiga uttryck kan ge inga resultat. Testa alltid mönster på ett provset först. + +**Q:** Var kan jag hitta mer avancerade GroupDocs.Search‑handledningar? +**A:** Besök [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) för djupgående guider, API‑referenser och exempelprojekt. + +--- + +**Senast uppdaterad:** 2026-07-31 +**Testat med:** GroupDocs.Search 25.4 +**Författare:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## Relaterade handledningar + +- [Mästra GroupDocs.Search Java: Effektiv dokumentsökning och indexhantering](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [Mästra GroupDocs.Search Java: Fuzzy‑sökning & guide för dokumentindexering](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [Hur man indexerar text i Java med GroupDocs.Search‑guide](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/swedish/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/swedish/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..d371824b0 --- /dev/null +++ b/content/swedish/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,278 @@ +--- +date: '2026-07-31' +description: Lär dig hur du implementerar skiftlägesokänslig sökning i Java genom + att lägga till dokument i ett index med GroupDocs.Search, och använder teckenersättning + för att normalisera text under indexering. +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: Skiftlägesokänslig sökning i Java låter dig lägga till dokument i + ett index och söka dem utan att oroa dig för bokstavsstorlek. Denna guide visar + hur GroupDocs.Search normaliserar text under indexering för snabba, pålitliga resultat. +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Skiftlägesokänslig sökning Java – Indexera dokument med GroupDocs +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: Lägg till dokument i index för skiftlägesokänslig sökning i Java +type: docs +url: /sv/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# Lägg till dokument i index för skiftlägesokänslig sökning i Java + +När du behöver **case insensitive search java** som på ett pålitligt sätt hittar information oavsett hur användare skriver den, är nyckeln att lägga till dokument i ett index samtidigt som texten normaliseras. I den här handledningen går vi igenom hur du konfigurerar GroupDocs.Search för Java så att varje dokument du indexerar automatiskt omvandlas till gemener (eller på annat sätt transformeras) under indexeringen, vilket garanterar skiftlägesokänsliga resultat utan extra logik vid frågetiden. + +## Snabba svar +- **Vad betyder “add documents to index”?** Det betyder att ladda källfiler i en sökbar datastruktur så att de kan frågas senare. +- **Varför använda teckenersättning?** Det normaliserar varje tecken—vanligtvis till gemener—så att sökningar automatiskt ignorerar skillnader i skiftläge. +- **Behöver jag en licens?** En gratis provversion fungerar för utveckling; en full licens krävs för produktionsdistributioner. +- **Vilken Java-version krävs?** Java 8 eller nyare; biblioteket riktar sig mot Java 11+ för optimal prestanda. +- **Kan jag växla till skiftlägeskänslig sökning vid behov?** Ja—sökalternativ låter dig växla skiftlägeskänslighet per fråga. + +## Vad betyder “add documents to index” i GroupDocs.Search? + +Ladda dina källfiler (PDF, DOCX, TXT osv.) i ett sökbart index så att motorn kan hämta dem snabbt. Att lägga till dokument i ett index analyserar varje fil, extraherar ren text och lagrar den i en optimerad datastruktur som möjliggör snabba uppslag. + +## Varför aktivera teckenersättning under indexering? + +Teckenersättning konverterar varje tecken till en fördefinierad motsvarighet—vanligtvis gemener—under byggandet av indexet. Detta säkerställer att variationer i versalisering, diakritiska tecken eller lokalspecifika symboler inte påverkar sökresultaten. Genom att normalisera texten vid indexering kan motorn matcha frågor mot en konsekvent tokenuppsättning, vilket ger snabb, pålitlig skiftlägesokänslig funktion utan extra bearbetning för varje sökning. + +## Förutsättningar +- **GroupDocs.Search for Java** version 25.4 eller nyare (biblioteket stödjer över 30 filformat och kan indexera dokument med flera hundra sidor utan att ladda hela filen i minnet). +- **Java Development Kit (JDK)** 8 eller senare installerat. +- Grundläggande kunskap om **Maven** (eller möjlighet att lägga till JAR-filer manuellt). + +## Konfigurera GroupDocs.Search för Java + +### Maven-inställning +Lägg till GroupDocs‑arkivet och beroendet i din `pom.xml`: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### Direkt nedladdning +Om du föredrar att inte använda Maven, hämta den senaste JAR‑filen från den officiella sidan: [GroupDocs.Search för Java-utgåvor](https://releases.groupdocs.com/search/java/). + +### Licensanskaffning +- **Free Trial** – ladda ner en provlicens för att börja experimentera. +- **Temporary License** – begär en utökad testlicens från GroupDocs‑portalen. +- **Full License** – köp en produktionslicens när du är redo att gå live. + +### Grundläggande initiering (Skapa indexet) +Följande kodsnutt skapar en indexmapp och aktiverar teckenersättningar: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## Implementeringsguide + +### Aktivera teckenersättning i indexinställningarna +Att aktivera den här funktionen instruerar motorn att ersätta tecken under indexering, vilket är kärnsteg för skiftlägesokänslig funktion. + +#### Steg 1: Konfigurera `IndexSettings` +`IndexSettings` är konfigurationsobjektet som styr hur indexet lagrar och bearbetar text. Genom att sätta `useCharacterReplacements` till **true** slår du på automatisk gemener (eller någon anpassad mappning du tillhandahåller). + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### Konfigurera teckenersättningar +Mappa varje tecken till dess gemena motsvarighet (eller någon anpassad mappning du behöver). + +#### Steg 2: Definiera och lägg till ersättningspar +Ersättningsordboken innehåller par som `'A' → 'a'`, `'É' → 'e'` osv. Att lägga till dessa par före indexering säkerställer att varje token normaliseras. + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### Indexera dokument +Nu när indexet är klart kan du **add documents to index** från vilken mapp som helst. + +#### Steg 3: Lägg till dokument för indexering +GroupDocs.Search skannar målkatalogen, extraherar text från varje stödd filtyp, tillämpar ersättningsmappen och skriver tokenarna till indexlagringen. + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### Utför skiftlägeskänslig sökning (valfritt) + +#### Steg 4: Utför skiftlägeskänsliga sökningar +`SearchOptions` konfigurerar frågebeteende, såsom att växla skiftlägeskänslighet, vilket möjliggör finjusterad kontroll över hur sökningar utförs. +`SearchOptions.setUseCaseSensitiveSearch(true)` tvingar motorn att behandla stora och små tecken som olika under en specifik fråga, vilket åsidosätter standardbeteendet för skiftlägesokänslig sökning. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## Praktiska tillämpningar +1. **Marketing Campaigns** – Normalisera produktnamn så säljteam kan hitta resurser utan att oroa sig för skiftläge. +2. **Customer Support** – Driv help‑desk sökrutor som returnerar rätt artikel oavsett om användaren skriver “login” eller “Login”. +3. **E‑commerce Catalogs** – Säkerställ att kunder hittar produkter oavsett hur de skriver produktnamn, vilket förbättrar konverteringsgraden. + +## Prestandaöverväganden +- **Organize Source Files** – En välordnad mappstruktur minskar den tid som spenderas på skanning under steget **add documents to index**. +- **Monitor Memory** – Indexering av stora korpusar kan förbruka betydande RAM; att bearbeta filer i satser om 500 – 1 000 objekt håller heap‑användningen under kontroll. +- **Asynchronous Indexing** – När det stöds, kör indexering på en bakgrundstråd för att hålla UI responsivt och undvika att blockera användaroperationer. + +## Vanliga problem & felsökning +| Symptom | Trolig orsak | Åtgärd | +|---------|--------------|-----| +| Inga resultat returneras för ett känt begrepp | Teckenersättningar är inte aktiverade | Verifiera `settings.setUseCharacterReplacements(true)` och att ersättningsmappen innehåller de nödvändiga tecknen. | +| Out‑of‑memory‑fel under indexering | Indexering av för många stora filer samtidigt | Indexera i mindre satser eller öka JVM‑heap (`-Xmx4g`). | +| Sökning returnerar oväntat skiftlägeskänsliga resultat | `SearchOptions.setUseCaseSensitiveSearch(true)` var satt | Ta bort eller sätt till `false` för standardbeteendet skiftlägesokänslig sökning. | +| Indexladdningstid överstiger förväntningarna | Ineffektiv mappstruktur eller SSD används inte | Omorganisera filer, rensa bort oanvända dokument och lagra indexet på en snabb SSD. | +| Specialtecken ignoreras | Ersättningsmappen saknar Unicode‑poster | Lägg till mappningar för tecken som “é”, “ß”, “ø” till deras önskade motsvarigheter. | + +## Vanliga frågor + +**Q: Hur hanterar jag specialtecken (t.ex. “é”, “ß”) under indexering?** +A: Inkludera dessa tecken i din ersättningskarta, mappa dem till deras ASCII‑motsvarigheter eller behåll dem oförändrade beroende på sökkrav. + +**Q: Kan jag begränsa teckenersättning till ett specifikt språk?** +A: Ja. Bygg en anpassad ersättningsarray som endast innehåller tecken för målspråket innan du lägger till den i ordboken. + +**Q: Vad ska jag göra om indexet tar lång tid att ladda?** +A: Optimera mappstrukturen, ta bort onödiga filer och lagra indexet på en högpresterande SSD. Inkrementell indexering minskar också laddningsbördan. + +**Q: Är det möjligt att återställa teckenersättningar efter indexering?** +A: Nej. Ersättningar är inbäddade i den indexerade datan; du måste bygga om indexet med nya inställningar för att ändra dem. + +**Q: Var kan jag hitta mer detaljerad API‑dokumentation?** +A: De officiella dokumenten och API‑referensen ger utförliga detaljer (se resurserna nedan). + +## Resurser +- [Dokumentation](https://docs.groupdocs.com/search/java/) +- [API‑referens](https://reference.groupdocs.com/search/java) +- [Ladda ner GroupDocs.Search](https://releases.groupdocs.com/search/java/) +- [GitHub‑arkiv](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [Gratis supportforum](https://forum.groupdocs.com/c/search/10) +- [Information om temporär licens](https://purchase.groupdocs.com/temporary-license/) + +--- + +**Senast uppdaterad:** 2026-07-31 +**Testad med:** GroupDocs.Search 25.4 for Java +**Författare:** GroupDocs + +## Relaterade handledningar + +- [Teckenersättning i GroupDocs.Search Java: En omfattande guide för att förbättra textsökning och indexering](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [Lägg till dokument i index: skiftlägeskänslig Java-sökning med GroupDocs](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [Hur man lägger till dokument i index med GroupDocs.Search för Java](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/swedish/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/swedish/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..b62354d74 --- /dev/null +++ b/content/swedish/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,302 @@ +--- +date: '2026-07-31' +description: Lär dig hur du skapar robust .NET-loggning med GroupDocs genom att implementera + en anpassad console logger och utnyttja den inbyggda FileLogger för effektiv övervakning. +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: Lär dig hur du skapar robust .NET-loggning med GroupDocs genom att + implementera en anpassad console logger och utnyttja den inbyggda FileLogger för + effektiv övervakning. +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: Skapa robust .NET-loggning med GroupDocs Console Logger +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: Skapa robust .NET-loggning med GroupDocs Console Logger +type: docs +url: /sv/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# Skapa robust .NET-loggning med GroupDocs Console Logger + +## Introduktion + +Kämpar du med att hålla reda på fel och spåra operationer i dina .NET‑applikationer? **Create robust .NET logging** är avgörande för att övervaka prestanda, felsöka problem och upprätthålla smidig drift. Den här handledningen guidar dig genom att bygga en anpassad konsolloggare med GroupDocs.Search samtidigt som du får se hur du integrerar GroupDocs.Redaction för .NET. I slutet har du en tydlig, underhållbar loggningslösning som passar direkt in i din befintliga kodbas. + +## Snabba svar +- **Vad gör den anpassade loggaren?** Skriver loggposter direkt till konsolen för omedelbar återkoppling under utveckling. +- **Vilken GroupDocs‑komponent tillhandahåller filloggning?** Den inbyggda `FileLogger`‑klassen hanterar beständiga loggfiler. +- **Behöver jag en licens?** En tillfällig licens fungerar för testning; en full licens krävs för produktion. +- **Vilka .NET‑versioner stöds?** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **Är lösningen trådsäker?** Ja—både `ConsoleLogger` och `FileLogger` är utformade för samtidig användning. + +## Vad är “create robust .NET logging”? +**Create robust .NET logging** betyder att etablera en pålitlig, högpresterande loggningpipeline som fångar fel, varningar och informationsmeddelanden i alla lager av en applikation. Med GroupDocs kan du uppnå detta genom både konsol‑ och filloggningsmål samtidigt som konfigurationen hålls enkel. + +## Varför använda GroupDocs för .NET-loggning? +GroupDocs stödjer **30+ .NET‑plattformar** och kan bearbeta dokument upp till **2 GB** utan märkbar prestandapåverkan. Dess loggnings‑API:er är lätta, trådsäkra och integreras sömlöst med befintliga undantagshanteringsmönster, vilket ger dig en beprövad, företagsklassad lösning. + +## Förutsättningar + +- **Krävda bibliotek och versioner:** GroupDocs.Search for .NET and GroupDocs.Redaction for .NET (latest compatible releases). +- **Miljöuppsättning:** Visual Studio 2022 or any .NET‑compatible IDE. +- **Förkunskaper:** Familiarity with C# syntax and basic logging concepts. + +## Konfigurera GroupDocs.Redaction för .NET + +Börja med att lägga till GroupDocs.Redaction i ditt projekt. Välj den metod som bäst passar ditt arbetsflöde. + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +Sök efter “GroupDocs.Redaction” och installera den senaste versionen. + +### Licensanskaffning + +För att komma igång kan du skaffa en tillfällig licens eller köpa en fullständig. Detta gör att du kan utforska alla funktioner utan begränsningar. Besök [GroupDocs' official site](https://purchase.groupdocs.com/temporary-license/) för mer information om hur du skaffar din licens. + +### Grundläggande initiering och konfiguration + +`Redactor`‑klassen tillhandahåller API:er för att modifiera och radera innehåll i stödda dokument. +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## Implementeringsguide + +### Hur implementerar man en anpassad konsolloggare med GroupDocs? + +Ladda din anpassade logger genom att skapa en instans av `ConsoleLogger` och skicka den till `SearchOptions` eller någon GroupDocs‑komponent som accepterar en `ILogger`. Loggern skriver varje meddelande till `Console.WriteLine`, vilket ger dig realtidsinsyn i vad biblioteket gör och hjälper dig snabbt att upptäcka problem under utveckling. + +`ConsoleLogger`‑klassen implementerar `ILogger` för att skriva loggmeddelanden direkt till konsolen. +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Steg 1: Definiera din anpassade logger** +Skapa en ny klass med namnet `ConsoleLogger`: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Steg 2: Integrera med GroupDocs.Search** + +`SearchOptions` konfigurerar sökbeteende och accepterar en `ILogger` för loggning. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Vad är FileLogger och när ska den användas? + +`FileLogger`‑klassen implementerar `ILogger` och sparar loggposter i en fil på disk, vilket gör den idealisk för produktionsmiljöer där revisionsspår krävs. `FileLogger`‑klassen som levereras av GroupDocs skriver loggposter till en specificerad fil på disk, vilket är perfekt för produktionsmiljöer där du behöver beständiga revisionsspår. Du kan konfigurera loggrotation, filstorleksgränser och loggnivåer för att passa dina operativa krav. + +`FileLogger`‑klassen implementerar `ILogger` och sparar loggposter i en fil på disk. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Varför välja GroupDocs för .NET-loggning? + +GroupDocs erbjuder en **kvantifierad** fördel: den stödjer **över 50 utdataformat** och kan hantera **dokument med flera hundra sidor** utan att ladda hela filen i minnet. Dess loggningsinfrastruktur lägger till mindre än **2 ms** overhead per loggpost, vilket säkerställer att prestandan förblir optimal även under hög belastning. + +## Praktiska tillämpningar + +Här är några praktiska scenarier där dessa loggningstekniker glänser: + +1. **Applikationsövervakning:** Använd `ConsoleLogger` under utveckling för att se live‑diagnostik. +2. **Revisionsspår:** Distribuera `FileLogger` för att upprätthålla efterlevnadsloggar för regulatorisk rapportering. +3. **Felsökning:** Utnyttja detaljerade spårningsmeddelanden för att lokalisera problem i komplexa sökpipelines. +4. **Prestandaanalys:** Granska loggtidsstämplar för att identifiera flaskhalsar och optimera resursanvändning. + +## Prestandaöverväganden + +För att hålla loggning snabb och effektiv: + +- **Begränsa loggverbositet:** Ställ in loggerns nivå till `Info` eller `Warning` i produktion för att undvika överdriven I/O. +- **Effektiv resursanvändning:** Konfigurera `FileLogger` med en maximal filstorlek på 10 MB och aktivera automatisk rullning. +- **Minneshantering:** Disposera logger‑instanser med `using`‑block eller explicita `Dispose()`‑anrop för att snabbt frigöra resurser. + +## Vanliga frågor + +**Q: Kan jag använda den anpassade konsolloggaren i en flertrådad applikation?** +A: Ja—både `ConsoleLogger` och `FileLogger` är trådsäkra, så du kan logga från parallella uppgifter utan tävlingsförhållanden. + +**Q: Behöver jag en separat licens för GroupDocs.Search och GroupDocs.Redaction?** +A: En enda GroupDocs‑licens täcker alla moduler, inklusive Search och Redaction, vilket förenklar inköp. + +**Q: Hur ändrar jag loggfilens plats för FileLogger?** +A: Ställ in egenskapen `LogFilePath` när du skapar `FileLogger`‑instansen, t.ex. `new FileLogger("C:\\Logs\\app.log")`. + +**Q: Vilka loggnivåer stödjer GroupDocs?** +A: Biblioteket erbjuder nivåerna `Debug`, `Info`, `Warning`, `Error` och `Critical`, vilket möjliggör finjusterad kontroll över utdata. + +**Q: Är det möjligt att kombinera både konsol‑ och filloggning samtidigt?** +A: Absolut—skapa en sammansatt logger som vidarebefordrar meddelanden till både `ConsoleLogger` och `FileLogger` för dubbel synlighet. + +## Resurser + +- [GroupDocs Redaction-dokumentation](https://docs.groupdocs.com/search/net/) +- [API‑referens](https://reference.groupdocs.com/redaction/net) +- [Ladda ner GroupDocs‑bibliotek](https://releases.groupdocs.com/search/net/) +- [Gratis supportforum](https://forum.groupdocs.com/c/search/10) +- [Tillfällig licensanskaffning](https://purchase.groupdocs.com/temporary-license/) + +## Slutsats + +I den här guiden har vi visat hur man **create robust .NET logging** genom att bygga en anpassad konsolloggare och utnyttja GroupDocs inbyggda `FileLogger`. Dessa verktyg ger dig realtidsinsikt under utveckling och pålitliga, beständiga loggar för produktion. Utforska olika loggnivåkonfigurationer, experimentera med sammansatta loggare och integrera lösningen i större tjänster för full‑stack‑observabilitet. + +## Nästa steg + +- Testa olika loggnivåinställningar för att hitta den optimala balansen mellan detaljrikedom och prestanda. +- Lägg till strukturerad loggning (JSON‑utdata) till `FileLogger` för enklare import i logganalysplattformar. +- Utforska GroupDocs andra moduler, såsom Search och Annotation, för att utöka din dokumentbehandlingspipeline. + +**Senast uppdaterad:** 2026-07-31 +**Testad med:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 för .NET +**Författare:** GroupDocs + +## Relaterade handledningar + +- [Undantagshantering och loggningshandledningar för GroupDocs.Search .NET](/search/net/exception-handling-logging/) +- [Implementering av GroupDocs.Search och Redaction i .NET för dokumenthantering](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [Mästarprogram för GroupDocs Search och Redaction i .NET: Avancerad dokumenthantering](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/thai/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/thai/java/searching/groupdocs-search-java-regex-tutorial/_index.md new file mode 100644 index 000000000..c8adb2cd6 --- /dev/null +++ b/content/thai/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -0,0 +1,233 @@ +--- +date: '2026-07-31' +description: เรียนรู้วิธีการ regex search ใน Java ด้วย GroupDocs.Search. บทแนะนำขั้นตอนต่อขั้นตอนนี้แสดงการ + setup, การสร้าง index, และตัวอย่าง regex query สำหรับการวิเคราะห์เอกสารข้อความอย่างรวดเร็ว. +keywords: +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: การ regex search ใน Java ด้วย GroupDocs.Search ทำให้ pattern matching + อย่างรวดเร็วบน PDFs, Word, และไฟล์ข้อความ. ปฏิบัติตาม guide นี้เพื่อทำการ set up, + index เอกสาร, และรัน regex queries ที่มีประสิทธิภาพ. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: วิธีการ Regex Search ใน Java ด้วย GroupDocs.Search Guide +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: วิธีการ Regex Search ใน Java ด้วย GroupDocs.Search Guide +type: docs +url: /th/java/searching/groupdocs-search-java-regex-tutorial/ +weight: 1 +--- + +# วิธีการค้นหาแบบ Regex ใน Java ด้วย GroupDocs.Search + +การค้นหาผ่านเอกสารข้อความหลายพันไฟล์อาจรู้สึกเหมือนการหาหลอดไฟในกองฟาง **How to regex search** ใน Java จะกลายเป็นเรื่องง่ายเมื่อคุณจับคู่เครื่องมือ regular‑expression ที่ทรงพลังของภาษาเข้ากับ GroupDocs.Search ซึ่งเป็นไลบรารีที่สร้างดัชนีเพื่อการจับคู่รูปแบบที่เร็วราวแสง ในไม่กี่นาทีต่อไปคุณจะได้เห็นวิธีการติดตั้งไลบรารี, สร้างดัชนี, เพิ่มไฟล์, และรันทั้ง query แบบข้อความธรรมดาและแบบอ็อบเจ็กต์ หากเสร็จแล้วคุณจะพร้อมฝังการค้นหาแบบ pattern‑matching ที่แข็งแกร่งเข้าไปในแอปพลิเคชัน Java ใดก็ได้ + +## คำตอบด่วน +- **ไลบรารีหลักคืออะไร?** GroupDocs.Search for Java +- **ฉันจะเริ่มอย่างไร?** เพิ่ม dependency ของ Maven และสร้างอ็อบเจ็กต์ `Index` +- **ฉันสามารถกรองเนื้อหาด้วย regex ได้หรือไม่?** ใช่ – ใช้ regex queries สำหรับสถานการณ์การกรองเนื้อหา +- **ฉันต้องการใบอนุญาตหรือไม่?** ต้องมีการทดลองใช้ฟรีหรือใบอนุญาตชั่วคราวสำหรับการใช้งานใน production +- **เวอร์ชัน JDK ที่รองรับคืออะไร?** Java 8 หรือสูงกว่า + +## Regex Search คืออะไร? +Regex search ช่วยให้คุณค้นหารูปแบบเช่น วันที่, ที่อยู่อีเมล, หรืออักขระที่ซ้ำกันในหลายไฟล์พร้อมกันในหนึ่งการดำเนินการ มันเปลี่ยน query แบบข้อความธรรมดาให้เป็นสแกนเนอร์ที่มีกฎซับซ้อนซึ่งสามารถสกัดหรือบล็อกเนื้อหาได้ทันที + +## ทำไมต้องใช้ GroupDocs.Search สำหรับ Regex Search? +GroupDocs.Search ทำการสร้างดัชนีเอกสารเพียงครั้งเดียวแล้วใช้ดัชนีนั้นซ้ำสำหรับทุก query ทำให้การค้นหา **เร็วขึ้นถึง 10×** เมื่อเทียบกับการสแกนไฟล์โดยตรง ไลบรารีรองรับ **ไฟล์รูปแบบกว่า 30 ประเภท** (PDF, DOCX, XLSX, PPTX, TXT, HTML และอื่น ๆ) และสามารถจัดการไฟล์หลายร้อยหน้าโดยไม่ต้องโหลดไฟล์ทั้งหมดเข้าสู่หน่วยความจำ + +## ข้อกำหนดเบื้องต้น +- Java Development Kit (JDK) 8 หรือสูงกว่า +- Maven สำหรับการจัดการ dependencies +- ความคุ้นเคยพื้นฐานกับ regular expressions ของ Java + +### ไลบรารีและ dependencies ที่จำเป็น +เพิ่ม GroupDocs.Search ลงในโปรเจค Maven ของคุณ: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +หรือดาวน์โหลด JAR ล่าสุดจาก [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/) + +### การรับใบอนุญาต +รับการทดลองใช้ฟรีหรือใบอนุญาตชั่วคราวจาก [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) แล้วโหลดที่จุดเริ่มต้นของแอปพลิเคชัน + +## การตั้งค่า GroupDocs.Search สำหรับ Java + +### ข้อมูลการติดตั้ง +1. **การรวม Maven:** เพิ่ม repository และ dependency ที่แสดงด้านบนลงในไฟล์ `pom.xml` ของคุณ +2. **ดาวน์โหลดโดยตรง:** วางไฟล์ JAR ลงใน classpath ของโปรเจคของคุณ +3. **การใช้ใบอนุญาต:** โหลดไฟล์ใบอนุญาตเมื่อเริ่มแอปพลิเคชัน + +```java +import com.groupdocs.search.*; + +public class SearchSetup { + public static void main(String[] args) { + // Initialize the index by specifying a directory. + String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; + Index index = new Index(indexFolder); + + System.out.println("Index created successfully at: " + indexFolder); + } +} +``` + +## ส่วนประกอบหลัก +คลาส `Index` เป็นส่วนประกอบหลักที่เก็บ token ที่สามารถค้นหาได้ซึ่งถูกสกัดจากเอกสารของคุณ มันทำให้การค้นหา term หรือ pattern ใด ๆ ทำได้อย่างรวดเร็วโดยไม่ต้องอ่านไฟล์ต้นฉบับใหม่ + +## วิธีสร้าง Index +การสร้างดัชนีทำได้ง่าย: สร้างอ็อบเจ็กต์ `Index` พร้อมเส้นทางโฟลเดอร์ที่ไฟล์ดัชนีจะถูกเก็บ ตัวสร้างจะสร้างไฟล์ฐานข้อมูลที่จำเป็นในครั้งแรกที่ใช้และเตรียมเอนจินสำหรับการเพิ่มและค้นหาเอกสาร เมื่อสร้างแล้วให้ใช้ดัชนีเดียวกันสำหรับทุก query + +```java +String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; +Index index = new Index(indexFolder); +``` + +## วิธีเพิ่มเอกสาร +เพื่อทำให้ไฟล์สามารถค้นหาได้ ให้เรียก `index.add` พร้อมอ็อบเจ็กต์ `Document` (หรือ `DocumentInfo`) ที่ชี้ไปยังเส้นทางไฟล์ ไลบรารีจะวิเคราะห์เนื้อหา, สกัด token, และเก็บไว้ในดัชนี การดำเนินการนี้สามารถทำได้ทั้งไฟล์เดี่ยวหรือเป็นชุด และการอัปเดตจะถูกรวมอย่างต่อเนื่อง + +```java +index.add("YOUR_DOCUMENT_DIRECTORY"); +system.out.println("Documents added to the index."); +``` + +## วิธีทำการค้นหา Regular Expression ในรูปแบบข้อความ +`RegexQuery` กำหนด query การค้นหาแบบ regular‑expression โหลด `RegexQuery` ด้วยรูปแบบข้อความธรรมดาและส่งให้เมธอด `search` ของ `Index` เอนจินจะประเมินรูปแบบต่อ token ที่ดัชนีไว้และคืนอ้างอิงเอกสารที่ตรงกัน ทำให้การค้นหาแบบครั้งเดียวเร็วและง่าย + +```java +String query1 = "^((.)\\2{1,})"; +``` + +## วิธีทำการค้นหา Regular Expression ในรูปแบบอ็อบเจ็กต์ +`RegexQuery` สามารถสร้างเป็นอ็อบเจ็กต์และนำกลับมาใช้ซ้ำในหลายการค้นหา กำหนด query ครั้งเดียว, ตั้งค่าตัวเลือกเช่นไม่สนใจตัวพิมพ์ใหญ่/เล็กหรือ fuzzy matching, แล้วเรียก `index.search` ซ้ำ ๆ วิธีนี้ช่วยเพิ่มประสิทธิภาพเมื่อรูปแบบเดียวกันถูกใช้กับชุดเอกสารหลายชุด + +```java +SearchResult result1 = index.search(query1); +system.out.println("Number of occurrences found: " + result1.getDocumentCount()); +``` + +## กรณีการใช้ Regex สำหรับการกรองเนื้อหา +คุณสามารถใช้ regex เพื่อบล็อกหรือทำเครื่องหมายเนื้อหาที่ตรงกับรูปแบบบางอย่างโดยอัตโนมัติ เช่น: + +- ตรวจจับอักขระซ้ำสำหรับการกรองสแปม +- ค้นหาลำดับที่คล้ายบัตรเครดิตสำหรับการตรวจสอบความเป็นส่วนตัวของข้อมูล +- ดึงวันที่หรือ ID สำหรับการประมวลผลต่อไป + +## การประยุกต์ใช้งานจริง +1. **ระบบจัดการเอกสาร:** ค้นหาสัญญา, ใบแจ้งหนี้, หรือนโยบายโดยใช้รูปแบบ (เช่น หมายเลขใบแจ้งหนี้) +2. **การตรวจสอบเนื้อหา:** ใช้กฎ regex เพื่อควบคุมข้อความที่ผู้ใช้สร้างในฟอรั่มหรือแอปแชท +3. **การดึงข้อมูล:** ดึงข้อมูลที่เป็นโครงสร้างเช่นหมายเลขคำสั่งซื้อจาก PDF หรือไฟล์ Word ที่ไม่มีโครงสร้าง + +## ข้อพิจารณาด้านประสิทธิภาพ +- **การอัปเดต Index:** เรียก `index.add` ทุกครั้งที่ไฟล์ต้นทางมีการเปลี่ยนแปลงเพื่อให้ผลลัพธ์เป็นปัจจุบัน +- **การจัดการหน่วยความจำ:** สำหรับคอลเลกชันที่เกิน 1 ล้านเอกสาร ให้เปิดใช้งานการทำดัชนีแบบเพิ่มส่วนเพื่อควบคุมการใช้ heap +- **การออกแบบ Regex:** ทำให้รูปแบบสั้นกระชับ; รูปแบบเช่น `\d{4}-\d{2}-\d{2}` ทำงานเร็วกว่า 3× เมื่อเทียบกับนิพจน์ที่มี wildcard มากเช่น `.*` + +## สรุป +คุณได้เรียนรู้ **วิธีการค้นหาแบบ regex** ใน Java ด้วย GroupDocs.Search ตั้งแต่การติดตั้งไลบรารี, การสร้างดัชนี, การเพิ่มไฟล์, จนถึงการดำเนินการ query ทั้งแบบข้อความและแบบอ็อบเจ็กต์ เทคนิคเหล่านี้ช่วยให้คุณเพิ่มการค้นหาแบบ pattern‑aware ที่เร็วลงในแอปพลิเคชัน Java ใดก็ได้ ไม่ว่าจะเป็นพอร์ทัลเอกสาร, ตัวสแกน compliance, หรือ pipeline การทำเหมืองข้อมูล + +## คำถามที่พบบ่อย + +**Q:** ความแตกต่างระหว่าง regex query แบบ text‑based กับ object‑based ใน GroupDocs.Search คืออะไร? +**A:** query แบบ text‑based เป็นการเขียนสั้น ๆ ที่รวดเร็ว ในขณะที่ query แบบ object‑based ให้คำนิยามที่สามารถนำกลับมาใช้ใหม่และปลอดภัยต่อประเภท ซึ่งสามารถเก็บและนำกลับมาใช้ใหม่ในหลายการค้นหา + +**Q:** GroupDocs.Search สามารถทำดัชนีเอกสารที่ไม่ใช่ข้อความเช่น PDF หรือไฟล์ Excel ได้หรือไม่? +**A:** ได้, ไลบรารีสกัดข้อความที่สามารถค้นหาได้จาก PDF, DOCX, XLSX, PPTX, และรูปแบบอื่น ๆ มากกว่า 30 รูปแบบ + +**Q:** ฉันจะอัปเดตดัชนีการค้นหาที่มีอยู่หลังจากเพิ่มไฟล์ใหม่อย่างไร? +**A:** เรียก `index.add` พร้อมเอกสารใหม่หรือที่แก้ไข; ไลบรารีจะรวมการเปลี่ยนแปลงโดยไม่ต้องสร้างดัชนีใหม่ทั้งหมด + +**Q:** ข้อผิดพลาดทั่วไปเมื่อใช้ regex กับ GroupDocs.Search มีอะไรบ้าง? +**A:** รูปแบบที่กว้างเกินไป (เช่น `.*`) อาจทำให้ประสิทธิภาพลดลง, และนิพจน์ที่ไม่ถูกต้องอาจไม่ให้ผลลัพธ์ใด ๆ ควรทดสอบรูปแบบบนชุดตัวอย่างก่อนเสมอ + +**Q:** ฉันจะหา tutorial ขั้นสูงของ GroupDocs.Search ได้จากที่ไหน? +**A:** เยี่ยมชม [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) เพื่อรับคู่มือเชิงลึก, เอกสารอ้างอิง API, และตัวอย่างโปรเจค + +--- + +**อัปเดตล่าสุด:** 2026-07-31 +**ทดสอบด้วย:** GroupDocs.Search 25.4 +**ผู้เขียน:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## บทแนะนำที่เกี่ยวข้อง + +- [เชี่ยวชาญ GroupDocs.Search Java: การค้นหาเอกสารอย่างมีประสิทธิภาพและการจัดการดัชนี](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [เชี่ยวชาญ GroupDocs.Search Java: คำแนะนำการค้นหาแบบ Fuzzy & การทำดัชนีเอกสาร](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [วิธีทำดัชนีข้อความใน Java ด้วย GroupDocs.Search](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/thai/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/thai/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..69977313d --- /dev/null +++ b/content/thai/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,274 @@ +--- +date: '2026-07-31' +description: เรียนรู้วิธีการทำการค้นหาแบบไม่แยกแยะตัวพิมพ์ใน Java โดยการเพิ่มเอกสารเข้าสู่ดัชนีด้วย + GroupDocs.Search พร้อมใช้การแทนที่อักขระเพื่อทำให้ข้อความเป็นมาตรฐานระหว่างการทำดัชนี +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: การค้นหาแบบไม่แยกแยะตัวพิมพ์ใน Java ช่วยให้คุณเพิ่มเอกสารเข้าสู่ดัชนีและค้นหาได้โดยไม่ต้องกังวลเรื่องตัวอักษรใหญ่‑เล็ก + คู่มือฉบับนี้แสดงให้เห็นว่า GroupDocs.Search ทำให้ข้อความเป็นมาตรฐานระหว่างการทำดัชนีเพื่อผลลัพธ์ที่เร็วและเชื่อถือได้ +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: การค้นหาแบบไม่แยกแยะตัวพิมพ์ใน Java – ดัชนีเอกสารด้วย GroupDocs +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: เพิ่มเอกสารเข้าสู่ดัชนีสำหรับการค้นหาแบบไม่แยกแยะตัวพิมพ์ใน Java +type: docs +url: /th/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# เพิ่มเอกสารไปยังดัชนีสำหรับการค้นหาแบบไม่แยกแยะตัวพิมพ์ใหญ่‑เล็กใน Java + +เมื่อคุณต้องการ **case insensitive search java** ที่ค้นหาข้อมูลได้อย่างแม่นยำโดยไม่สนใจว่าผู้ใช้พิมพ์อย่างไร กุญแจสำคัญคือการเพิ่มเอกสารไปยังดัชนีพร้อมกับทำให้ข้อความเป็นมาตรฐาน ในบทแนะนำนี้เราจะอธิบายการตั้งค่า GroupDocs.Search สำหรับ Java เพื่อให้เอกสารทุกไฟล์ที่คุณทำดัชนีถูกแปลงเป็นตัวพิมพ์เล็กโดยอัตโนมัติ (หรือแปลงในรูปแบบอื่น) ระหว่างการทำดัชนี ทำให้ผลลัพธ์การค้นหาแบบไม่แยกแยะตัวพิมพ์ใหญ่‑เล็กได้โดยไม่ต้องมีตรรกะเพิ่มเติมในขั้นตอนการค้นหา + +## คำตอบสั้น +- **“add documents to index” หมายถึงอะไร?** หมายถึงการโหลดไฟล์ต้นทางเข้าสู่โครงสร้างข้อมูลที่สามารถค้นหาได้ เพื่อให้สามารถสืบค้นได้ในภายหลัง. +- **ทำไมต้องใช้การแทนที่อักขระ?** มันทำให้ทุกอักขระเป็นมาตรฐาน—โดยทั่วไปเป็นตัวพิมพ์เล็ก—เพื่อให้การค้นหาไม่สนใจความแตกต่างของตัวพิมพ์ใหญ่‑เล็กโดยอัตโนมัติ. +- **ต้องการไลเซนส์หรือไม่?** การทดลองใช้ฟรีสามารถใช้สำหรับการพัฒนา; จำเป็นต้องมีไลเซนส์เต็มสำหรับการใช้งานในสภาพแวดล้อมการผลิต. +- **ต้องการเวอร์ชัน Java ใด?** Java 8 หรือใหม่กว่า; ไลบรารีนี้มุ่งเป้าไปที่ Java 11+ เพื่อประสิทธิภาพที่ดีที่สุด. +- **ฉันสามารถสลับไปใช้การค้นหาแบบแยกแยะตัวพิมพ์ใหญ่‑เล็กเมื่อจำเป็นได้หรือไม่?** ได้—ตัวเลือกการค้นหาช่วยให้คุณเปิด/ปิดการแยกแยะตัวพิมพ์ใหญ่‑เล็กตามแต่ละคำค้น. + +## “add documents to index” คืออะไรใน GroupDocs.Search? +โหลดไฟล์ต้นทางของคุณ (PDF, DOCX, TXT ฯลฯ) ไปยังดัชนีที่สามารถค้นหาได้ เพื่อให้เครื่องมือสามารถดึงข้อมูลได้อย่างรวดเร็ว การเพิ่มเอกสารไปยังดัชนีจะทำการวิเคราะห์แต่ละไฟล์ ดึงข้อความธรรมดาออกมา และจัดเก็บในโครงสร้างข้อมูลที่ปรับแต่งเพื่อให้การค้นหาแบบเร็ว ๆ ทำได้ + +## ทำไมต้องเปิดใช้งานการแทนที่อักขระระหว่างการทำดัชนี? +การแทนที่อักขระจะเปลี่ยนแต่ละอักขระให้เป็นค่าที่กำหนดไว้ล่วงหน้า—โดยส่วนใหญ่เป็นตัวพิมพ์เล็ก—ในระหว่างการสร้างดัชนี สิ่งนี้ทำให้การเปลี่ยนแปลงของตัวพิมพ์ใหญ่‑เล็ก, เครื่องหมายสำเนียง, หรือสัญลักษณ์เฉพาะภาษาต่าง ๆ ไม่ส่งผลต่อผลลัพธ์การค้นหา โดยการทำให้ข้อความเป็นมาตรฐานในขั้นตอนการทำดัชนี เครื่องมือจะสามารถจับคู่คำค้นกับชุดโทเคนที่สอดคล้องกัน ทำให้พฤติกรรมการค้นหาแบบไม่แยกแยะตัวพิมพ์ใหญ่‑เล็กเร็วและเชื่อถือได้โดยไม่ต้องประมวลผลเพิ่มเติมในแต่ละการค้นหา + +## ข้อกำหนดเบื้องต้น +- **GroupDocs.Search for Java** เวอร์ชัน 25.4 หรือใหม่กว่า (ไลบรารีรองรับไฟล์รูปแบบกว่า 30 แบบและสามารถทำดัชนีเอกสารหลายร้อยหน้าโดยไม่ต้องโหลดไฟล์ทั้งหมดเข้าสู่หน่วยความจำ). +- **Java Development Kit (JDK)** เวอร์ชัน 8 หรือใหม่กว่า ติดตั้งแล้ว. +- ความคุ้นเคยพื้นฐานกับ **Maven** (หรือความสามารถในการเพิ่ม JAR ด้วยตนเอง). + +## การตั้งค่า GroupDocs.Search สำหรับ Java + +### การตั้งค่า Maven +Add the GroupDocs repository and dependency to your `pom.xml`: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### ดาวน์โหลดโดยตรง +หากคุณไม่ต้องการใช้ Maven ให้ดาวน์โหลด JAR ล่าสุดจากเว็บไซต์อย่างเป็นทางการ: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### การรับไลเซนส์ +- **Free Trial** – ดาวน์โหลดไลเซนส์ทดลองเพื่อเริ่มทดลองใช้งาน. +- **Temporary License** – ขอไลเซนส์ทดสอบระยะยาวจากพอร์ทัลของ GroupDocs. +- **Full License** – ซื้อไลเซนส์สำหรับการใช้งานจริงเมื่อพร้อมเปิดใช้งาน. + +### การเริ่มต้นพื้นฐาน (สร้างดัชนี) +The following snippet creates an index folder and enables character replacements: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## คู่มือการใช้งาน + +### เปิดใช้งานการแทนที่อักขระในการตั้งค่าดัชนี +การเปิดใช้งานฟีเจอร์นี้บอกให้เครื่องมือทำการแทนที่อักขระระหว่างการทำดัชนี ซึ่งเป็นขั้นตอนหลักสำหรับพฤติกรรมการค้นหาแบบไม่แยกแยะตัวพิมพ์ใหญ่‑เล็ก. + +#### ขั้นตอนที่ 1: กำหนดค่า `IndexSettings` +`IndexSettings` เป็นอ็อบเจ็กต์การกำหนดค่าที่ควบคุมวิธีการจัดเก็บและประมวลผลข้อความของดัชนี โดยการตั้งค่า `useCharacterReplacements` เป็น **true** จะเปิดการแปลงเป็นตัวพิมพ์เล็กอัตโนมัติ (หรือแมปกำหนดเองใด ๆ ที่คุณระบุ). + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### กำหนดค่าการแทนที่อักขระ +แมปแต่ละอักขระไปยังรูปแบบตัวพิมพ์เล็กที่สอดคล้อง (หรือแมปกำหนดเองใด ๆ ที่คุณต้องการ). + +#### ขั้นตอนที่ 2: กำหนดและเพิ่มคู่การแทนที่ +พจนานุกรมการแทนที่เก็บคู่เช่น `'A' → 'a'`, `'É' → 'e'` เป็นต้น การเพิ่มคู่เหล่านี้ก่อนทำดัชนีทำให้ทุกโทเคนถูกทำให้เป็นมาตรฐาน. + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### การทำดัชนีเอกสาร +เมื่อดัชนีพร้อมแล้ว คุณสามารถ **add documents to index** จากโฟลเดอร์ใดก็ได้. + +#### ขั้นตอนที่ 3: เพิ่มเอกสารสำหรับทำดัชนี +GroupDocs.Search จะสแกนไดเรกทอรีเป้าหมาย ดึงข้อความจากแต่ละประเภทไฟล์ที่รองรับ ใช้แผนที่การแทนที่ และเขียนโทเคนลงในที่เก็บดัชนี. + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### ทำการค้นหาแบบแยกแยะตัวพิมพ์ใหญ่‑เล็ก (ทางเลือก) + +#### ขั้นตอนที่ 4: ดำเนินการค้นหาแบบแยกแยะตัวพิมพ์ใหญ่‑เล็ก +`SearchOptions` กำหนดพฤติกรรมของคำค้น เช่น การเปิด/ปิดการแยกแยะตัวพิมพ์ใหญ่‑เล็ก ให้ควบคุมการค้นหาได้อย่างละเอียด. +`SearchOptions.setUseCaseSensitiveSearch(true)` บังคับให้เครื่องมือพิจารณาตัวอักษรพิมพ์ใหญ่และพิมพ์เล็กเป็นต่างกันในคำค้นเฉพาะ ทำให้พฤติกรรมเริ่มต้นแบบไม่แยกแยะตัวพิมพ์ใหญ่‑เล็กถูกแทนที่. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## การประยุกต์ใช้งานจริง +1. **Marketing Campaigns** – ทำให้ชื่อผลิตภัณฑ์เป็นมาตรฐานเพื่อให้ทีมขายสามารถค้นหาแหล่งข้อมูลได้โดยไม่ต้องกังวลเรื่องตัวพิมพ์. +2. **Customer Support** – เสริมกล่องค้นหาของศูนย์ช่วยเหลือให้คืนบทความที่ถูกต้องไม่ว่าผู้ใช้พิมพ์ “login” หรือ “Login”. +3. **E‑commerce Catalogs** – ทำให้ผู้ซื้อสามารถค้นหารายการได้ไม่ว่าพิมพ์ชื่อผลิตภัณฑ์อย่างไร ช่วยเพิ่มอัตราการแปลง. + +## การพิจารณาด้านประสิทธิภาพ +- **Organize Source Files** – โครงสร้างโฟลเดอร์ที่เป็นระเบียบช่วยลดเวลาการสแกนในขั้นตอน **add documents to index**. +- **Monitor Memory** – การทำดัชนีข้อมูลจำนวนมากอาจใช้ RAM มาก; การประมวลผลไฟล์เป็นชุดละ 500 – 1 000 รายการช่วยควบคุมการใช้ heap. +- **Asynchronous Indexing** – หากรองรับ ให้ทำการทำดัชนีบนเธรดพื้นหลังเพื่อให้ UI ตอบสนองและหลีกเลี่ยงการบล็อกการทำงานของผู้ใช้. + +## ปัญหาทั่วไปและการแก้ไขข้อผิดพลาด +| อาการ | สาเหตุที่เป็นไปได้ | วิธีแก้ | +|---------|--------------|-----| +| ไม่มีผลลัพธ์คืนสำหรับคำที่รู้จัก | การแทนที่อักขระไม่ได้เปิดใช้งาน | ตรวจสอบว่า `settings.setUseCharacterReplacements(true)` ถูกตั้งค่าและแผนที่การแทนที่มีอักขระที่ต้องการอยู่. | +| ข้อผิดพลาด Out‑of‑memory ระหว่างการทำดัชนี | ทำดัชนีไฟล์ขนาดใหญ่จำนวนมากพร้อมกัน | ทำดัชนีเป็นชุดเล็กลงหรือเพิ่ม heap ของ JVM (`-Xmx4g`). | +| การค้นหาให้ผลลัพธ์แยกแยะตัวพิมพ์ใหญ่‑เล็กโดยไม่คาดคิด | `SearchOptions.setUseCaseSensitiveSearch(true)` ถูกตั้งค่า | ลบหรือตั้งค่าเป็น `false` เพื่อให้เป็นพฤติกรรมเริ่มต้นแบบไม่แยกแยะตัวพิมพ์ใหญ่‑เล็ก. | +| เวลาโหลดดัชนีเกินคาดหวัง | โครงสร้างโฟลเดอร์ไม่เหมาะสมหรือไม่ได้ใช้ SSD | จัดระเบียบไฟล์ใหม่, ลบเอกสารที่ไม่ได้ใช้, และเก็บดัชนีบน SSD ที่เร็ว. | +| อักขระพิเศษถูกละเลย | แผนที่การแทนที่ไม่มีรายการ Unicode | เพิ่มการแมปสำหรับอักขระเช่น “é”, “ß”, “ø” ให้เป็นค่าที่ต้องการ. | + +## คำถามที่พบบ่อย + +**Q: ฉันจะจัดการกับอักขระพิเศษ (เช่น “é”, “ß”) ระหว่างการทำดัชนีอย่างไร?** +A: รวมอักขระเหล่านั้นในแผนที่การแทนที่ของคุณ โดยแมปเป็นค่า ASCII ที่เทียบเท่าหรือคงไว้ตามความต้องการของการค้นหา. + +**Q: ฉันสามารถจำกัดการแทนที่อักขระให้เฉพาะภาษาหนึ่งได้หรือไม่?** +A: ได้. สร้างอาร์เรย์การแทนที่แบบกำหนดเองที่มีเฉพาะอักขระของภาษาที่ต้องการก่อนเพิ่มลงในพจนานุกรม. + +**Q: ควรทำอย่างไรหากดัชนีใช้เวลานานในการโหลด?** +A: ปรับโครงสร้างโฟลเดอร์, ลบไฟล์ที่ไม่จำเป็น, และเก็บดัชนีบน SSD ความเร็วสูง การทำดัชนีแบบเพิ่มส่วนช่วยลดภาระการโหลดได้. + +**Q: สามารถย้อนกลับการแทนที่อักขระหลังจากทำดัชนีได้หรือไม่?** +A: ไม่ได้. การแทนที่ถูกฝังไว้ในข้อมูลที่ทำดัชนีแล้ว; คุณต้องสร้างดัชนีใหม่ด้วยการตั้งค่าใหม่เพื่อเปลี่ยนแปลง. + +**Q: ฉันจะหาเอกสาร API รายละเอียดเพิ่มเติมได้จากที่ไหน?** +A: เอกสารอย่างเป็นทางการและอ้างอิง API มีรายละเอียดครบถ้วน (ดูส่วน Resources ด้านล่าง). + +## แหล่งข้อมูล +- [เอกสาร](https://docs.groupdocs.com/search/java/) +- [อ้างอิง API](https://reference.groupdocs.com/search/java) +- [ดาวน์โหลด GroupDocs.Search](https://releases.groupdocs.com/search/java/) +- [ที่เก็บ GitHub](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [ฟอรั่มสนับสนุนฟรี](https://forum.groupdocs.com/c/search/10) +- [ข้อมูลไลเซนส์ชั่วคราว](https://purchase.groupdocs.com/temporary-license/) + +--- + +**อัปเดตล่าสุด:** 2026-07-31 +**ทดสอบด้วย:** GroupDocs.Search 25.4 for Java +**ผู้เขียน:** GroupDocs + +## บทแนะนำที่เกี่ยวข้อง + +- [การแทนที่อักขระใน GroupDocs.Search Java: คู่มือครบวงจรเพื่อเพิ่มประสิทธิภาพการค้นหาข้อความและการทำดัชนี](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [เพิ่มเอกสารไปยังดัชนี: การค้นหา Java แยกแยะตัวพิมพ์ใหญ่‑เล็กด้วย GroupDocs](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [วิธีเพิ่มเอกสารไปยังดัชนีด้วย GroupDocs.Search สำหรับ Java](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/thai/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/thai/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..dda0d2cdb --- /dev/null +++ b/content/thai/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,299 @@ +--- +date: '2026-07-31' +description: เรียนรู้วิธีสร้างการบันทึก .NET ที่แข็งแรงโดยใช้ GroupDocs ด้วยการทำ + Custom console logger และการใช้ FileLogger ที่มีอยู่ในตัวเพื่อการตรวจสอบที่มีประสิทธิภาพ +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: เรียนรู้วิธีสร้างการบันทึก .NET ที่แข็งแรงโดยใช้ GroupDocs ด้วยการทำ + Custom console logger และการใช้ FileLogger ที่มีอยู่ในตัวเพื่อการตรวจสอบที่มีประสิทธิภาพ +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: สร้างการบันทึก .NET ที่แข็งแรงด้วย GroupDocs Console Logger +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: สร้างการบันทึก .NET ที่แข็งแรงด้วย GroupDocs Console Logger +type: docs +url: /th/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# สร้างการบันทึก .NET ที่แข็งแกร่งด้วย GroupDocs Console Logger + +## บทนำ + +คุณกำลังประสบปัญหาในการติดตามข้อผิดพลาดและการดำเนินการตรวจสอบในแอปพลิเคชัน .NET ของคุณหรือไม่? **Create robust .NET logging** มีความสำคัญสำหรับการตรวจสอบประสิทธิภาพ, การดีบักปัญหา, และการรักษาการทำงานที่ราบรื่น. บทเรียนนี้จะพาคุณผ่านการสร้าง logger คอนโซลแบบกำหนดเองโดยใช้ GroupDocs.Search พร้อมทั้งแสดงวิธีการรวม GroupDocs.Redaction สำหรับ .NET. เมื่อเสร็จสิ้น, คุณจะมีโซลูชันการบันทึกที่โปร่งใสและดูแลรักษาได้ง่ายซึ่งเข้ากับฐานโค้ดที่คุณมีอยู่แล้ว. + +## คำตอบด่วน +- **ตัวล็อกเกอร์แบบกำหนดเองทำอะไร?** เขียนรายการบันทึกโดยตรงไปยังคอนโซลเพื่อให้ได้รับข้อเสนอแนะทันทีระหว่างการพัฒนา. +- **คอมโพเนนต์ของ GroupDocs ตัวใดที่ให้การบันทึกไฟล์?** คลาส `FileLogger` ที่มีมาในตัวจัดการไฟล์บันทึกที่คงอยู่. +- **ฉันต้องการไลเซนส์หรือไม่?** ไลเซนส์ชั่วคราวทำงานได้สำหรับการทดสอบ; จำเป็นต้องมีไลเซนส์เต็มสำหรับการใช้งานจริง. +- **เวอร์ชัน .NET ใดที่รองรับ?** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **โซลูชันนี้ปลอดภัยต่อเธรดหรือไม่?** ใช่—ทั้ง `ConsoleLogger` และ `FileLogger` ถูกออกแบบให้ใช้พร้อมกันได้. + +## อะไรคือ “create robust .NET logging”? +**Create robust .NET logging** หมายถึงการสร้าง pipeline การบันทึกที่เชื่อถือได้และมีประสิทธิภาพสูงที่สามารถจับข้อผิดพลาด, คำเตือน, และข้อความข้อมูลทั่วทุกชั้นของแอปพลิเคชัน. ด้วย GroupDocs, คุณสามารถทำได้โดยใช้เป้าหมายคอนโซลและไฟล์พร้อมกับการตั้งค่าที่ง่าย. + +## ทำไมต้องใช้ GroupDocs สำหรับการบันทึก .NET? +GroupDocs รองรับ **30+ .NET platforms** และสามารถประมวลผลเอกสารได้ถึง **2 GB** โดยไม่ทำให้ประสิทธิภาพลดลงอย่างเห็นได้ชัด. API การบันทึกของมันมีน้ำหนักเบา, ปลอดภัยต่อเธรด, และรวมเข้ากับรูปแบบการจัดการข้อยกเว้นที่มีอยู่ได้อย่างราบรื่น, ให้คุณได้โซลูชันที่พิสูจน์แล้วและระดับองค์กร. + +## ข้อกำหนดเบื้องต้น +- **ไลบรารีและเวอร์ชันที่ต้องการ:** GroupDocs.Search for .NET และ GroupDocs.Redaction for .NET (รุ่นล่าสุดที่เข้ากันได้). +- **การตั้งค่าสภาพแวดล้อม:** Visual Studio 2022 หรือ IDE ที่เข้ากันได้กับ .NET ใด ๆ. +- **ความรู้เบื้องต้นที่ต้องมี:** ความคุ้นเคยกับไวยากรณ์ C# และแนวคิดพื้นฐานของการบันทึก. + +## การตั้งค่า GroupDocs.Redaction สำหรับ .NET + +ก่อนอื่น, เพิ่ม GroupDocs.Redaction ไปยังโปรเจกต์ของคุณ. เลือกวิธีที่เหมาะสมกับกระบวนการทำงานของคุณที่สุด. + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +ค้นหา “GroupDocs.Redaction” และติดตั้งเวอร์ชันล่าสุด. + +### การรับไลเซนส์ + +เพื่อเริ่มต้น, คุณสามารถรับไลเซนส์ชั่วคราวหรือซื้อไลเซนส์เต็ม. สิ่งนี้จะทำให้คุณสามารถสำรวจคุณสมบัติทั้งหมดโดยไม่มีข้อจำกัด. เยี่ยมชม [GroupDocs' official site](https://purchase.groupdocs.com/temporary-license/) เพื่อดูรายละเอียดเพิ่มเติมเกี่ยวกับการรับไลเซนส์ของคุณ. + +### การเริ่มต้นและการตั้งค่าพื้นฐาน + +คลาส `Redactor` ให้ API สำหรับแก้ไขและทำการลบข้อมูลในเอกสารที่รองรับ. +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## คู่มือการใช้งาน + +### วิธีการสร้าง logger คอนโซลแบบกำหนดเองด้วย GroupDocs? + +โหลด logger แบบกำหนดเองของคุณโดยการสร้างอินสแตนซ์ของ `ConsoleLogger` และส่งให้กับ `SearchOptions` หรือคอมโพเนนต์ใด ๆ ของ GroupDocs ที่รับ `ILogger`. logger จะเขียนแต่ละข้อความไปยัง `Console.WriteLine`, ให้คุณมองเห็นแบบเรียลไทม์ว่าห้องสมุดกำลังทำอะไร, และช่วยให้คุณพบปัญหาได้อย่างรวดเร็วระหว่างการพัฒนา. + +คลาส `ConsoleLogger` implements `ILogger` เพื่อเขียนข้อความบันทึกโดยตรงไปยังคอนโซล. +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**ขั้นตอนที่ 1: กำหนด Logger แบบกำหนดของคุณ** +สร้างคลาสใหม่ชื่อ `ConsoleLogger`: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**ขั้นตอนที่ 2: ผสานรวมกับ GroupDocs.Search** + +`SearchOptions` กำหนดพฤติกรรมการค้นหาและรับ `ILogger` สำหรับการบันทึก. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### FileLogger คืออะไรและควรใช้เมื่อใด? + +คลาส `FileLogger` implements `ILogger` และบันทึกรายการบันทึกลงไฟล์บนดิสก์, ทำให้เหมาะสำหรับสภาพแวดล้อมการผลิตที่ต้องการบันทึกการตรวจสอบ. คลาส `FileLogger` ที่ GroupDocs ให้มาจะเขียนรายการบันทึกไปยังไฟล์ที่ระบุบนดิสก์, ทำให้เหมาะสมสำหรับสภาพแวดล้อมการผลิตที่คุณต้องการบันทึกการตรวจสอบที่คงอยู่. คุณสามารถกำหนดการหมุนเวียนของบันทึก, ขีดจำกัดขนาดไฟล์, และระดับบันทึกให้สอดคล้องกับความต้องการการดำเนินงานของคุณ. + +คลาส `FileLogger` implements `ILogger` และบันทึกรายการบันทึกลงไฟล์บนดิสก์. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### ทำไมต้องเลือก GroupDocs สำหรับการบันทึก .NET? + +GroupDocs มอบข้อได้เปรียบ **quantified**: รองรับ **over 50 output formats** และสามารถจัดการ **multi‑hundred‑page documents** โดยไม่ต้องโหลดไฟล์ทั้งหมดเข้าสู่หน่วยความจำ. โครงสร้างการบันทึกของมันเพิ่ม overhead น้อยกว่า **2 ms** ต่อรายการบันทึก, ทำให้ประสิทธิภาพคงที่แม้ภายใต้โหลดหนัก. + +## การประยุกต์ใช้ในทางปฏิบัติ + +ต่อไปนี้เป็นสถานการณ์การใช้งานจริงที่เทคนิคการบันทึกเหล่านี้โดดเด่น: + +1. **การตรวจสอบแอปพลิเคชัน:** ใช้ `ConsoleLogger` ระหว่างการพัฒนาเพื่อดูการวินิจฉัยแบบเรียลไทม์. +2. **บันทึกการตรวจสอบ:** ใช้ `FileLogger` เพื่อรักษาบันทึกระดับการปฏิบัติตามสำหรับการรายงานตามกฎระเบียบ. +3. **การดีบัก:** ใช้ข้อความ trace รายละเอียดเพื่อระบุตำแหน่งปัญหาใน pipeline การค้นหาที่ซับซ้อน. +4. **การวิเคราะห์ประสิทธิภาพ:** ตรวจสอบ timestamp ของบันทึกเพื่อระบุคอขวดและเพิ่มประสิทธิภาพการใช้ทรัพยากร. + +## ข้อควรพิจารณาด้านประสิทธิภาพ + +เพื่อให้การบันทึกเร็วและมีประสิทธิภาพ: + +- **จำกัดความละเอียดของบันทึก:** ตั้งระดับของ logger เป็น `Info` หรือ `Warning` ในการผลิตเพื่อหลีกเลี่ยง I/O ที่มากเกินไป. +- **การใช้ทรัพยากรอย่างมีประสิทธิภาพ:** ตั้งค่า `FileLogger` ให้มีขนาดไฟล์สูงสุด 10 MB และเปิดใช้งานการหมุนเวียนอัตโนมัติ. +- **การจัดการหน่วยความจำ:** ทำการ Dispose อินสแตนซ์ของ logger ด้วยบล็อก `using` หรือเรียก `Dispose()` อย่างชัดเจนเพื่อปล่อยทรัพยากรโดยเร็ว. + +## คำถามที่พบบ่อย + +**Q: ฉันสามารถใช้ logger คอนโซลแบบกำหนดเองในแอปพลิเคชันหลายเธรดได้หรือไม่?** +A: ใช่—ทั้ง `ConsoleLogger` และ `FileLogger` ปลอดภัยต่อเธรด, ดังนั้นคุณสามารถบันทึกจากงานขนานได้โดยไม่มีเงื่อนไขการแข่งขัน. + +**Q: ฉันต้องการไลเซนส์แยกสำหรับ GroupDocs.Search และ GroupDocs.Redaction หรือไม่?** +A: ไลเซนส์ GroupDocs เดียวครอบคลุมโมดูลทั้งหมด รวมถึง Search และ Redaction, ทำให้การจัดซื้อเป็นเรื่องง่าย. + +**Q: ฉันจะเปลี่ยนตำแหน่งไฟล์บันทึกสำหรับ FileLogger อย่างไร?** +A: ตั้งค่า property `LogFilePath` เมื่อสร้างอินสแตนซ์ของ `FileLogger`, เช่น `new FileLogger("C:\\Logs\\app.log")`. + +**Q: GroupDocs รองรับระดับบันทึกใดบ้าง?** +A: ไลบรารีนี้ให้ระดับ `Debug`, `Info`, `Warning`, `Error`, และ `Critical`, ทำให้คุณควบคุมการแสดงผลได้อย่างละเอียด. + +**Q: สามารถรวมการบันทึกทั้งคอนโซลและไฟล์พร้อมกันได้หรือไม่?** +A: แน่นอน—สร้าง logger แบบคอมโพสิตที่ส่งข้อความไปยังทั้ง `ConsoleLogger` และ `FileLogger` เพื่อให้มองเห็นได้ทั้งสองแบบ. + +## แหล่งข้อมูล +- [เอกสาร GroupDocs Redaction](https://docs.groupdocs.com/search/net/) +- [อ้างอิง API](https://reference.groupdocs.com/redaction/net) +- [ดาวน์โหลดไลบรารี GroupDocs](https://releases.groupdocs.com/search/net/) +- [ฟอรั่มสนับสนุนฟรี](https://forum.groupdocs.com/c/search/10) +- [การรับไลเซนส์ชั่วคราว](https://purchase.groupdocs.com/temporary-license/) + +## สรุป + +ในคู่มือนี้, เราได้แสดงวิธี **create robust .NET logging** โดยการสร้าง logger คอนโซลแบบกำหนดเองและใช้ `FileLogger` ที่มาพร้อมกับ GroupDocs. เครื่องมือเหล่านี้ให้คุณมองเห็นแบบเรียลไทม์ระหว่างการพัฒนาและบันทึกที่เชื่อถือได้และคงอยู่สำหรับการผลิต. สำรวจการตั้งค่าระดับบันทึกต่าง ๆ, ทดลองกับ logger แบบคอมโพสิต, และผสานโซลูชันเข้ากับบริการขนาดใหญ่เพื่อการสังเกตแบบเต็มสแตก. + +**ขั้นตอนต่อไป** +- ทดสอบการตั้งค่าระดับบันทึกต่าง ๆ เพื่อหาจุดที่เหมาะสมระหว่างรายละเอียดและประสิทธิภาพ. +- เพิ่มการบันทึกแบบโครงสร้าง (ผลลัพธ์ JSON) ให้กับ `FileLogger` เพื่อการนำเข้าที่ง่ายขึ้นในแพลตฟอร์มวิเคราะห์บันทึก. +- สำรวจโมดูลอื่นของ GroupDocs เช่น Search และ Annotation เพื่อขยาย pipeline การประมวลผลเอกสารของคุณ. + +--- + +**อัปเดตล่าสุด:** 2026-07-31 +**ทดสอบด้วย:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**ผู้เขียน:** GroupDocs + +## บทเรียนที่เกี่ยวข้อง +- [บทเรียนการจัดการข้อยกเว้นและการบันทึกสำหรับ GroupDocs.Search .NET](/search/net/exception-handling-logging/) +- [การใช้งาน GroupDocs.Search และ Redaction ใน .NET สำหรับการจัดการเอกสาร](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [เชี่ยวชาญ GroupDocs Search และ Redaction ใน .NET: การจัดการเอกสารขั้นสูง](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/turkish/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/turkish/java/searching/groupdocs-search-java-regex-tutorial/_index.md new file mode 100644 index 000000000..811db1aed --- /dev/null +++ b/content/turkish/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -0,0 +1,234 @@ +--- +date: '2026-07-31' +description: GroupDocs.Search kullanarak Java'da regex aramasını öğrenin. Bu adım + adım öğretici, kurulum, indeks oluşturma ve hızlı metin belge analizi için regex + sorgu örneklerini gösterir. +keywords: +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: GroupDocs.Search kullanarak Java'da regex araması, PDF'ler, Word ve + metin dosyaları arasında hızlı desen eşleştirme sağlar. Bu rehberi izleyerek kurulum + yapın, belgeleri indeksleyin ve güçlü regex sorgularını çalıştırın. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: 'Java''da Regex Araması Nasıl Yapılır: GroupDocs.Search Rehberi' +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: 'Java''da Regex Araması Nasıl Yapılır: GroupDocs.Search Rehberi' +type: docs +url: /tr/java/searching/groupdocs-search-java-regex-tutorial/ +weight: 1 +--- + +# Java'da GroupDocs.Search ile Regex Araması Nasıl Yapılır + +Binlerce metin belgesi arasında arama yapmak, samanlıkta iğne aramaya benzetilebilir. **Java'da regex araması nasıl yapılır** dili güçlü düzenli ifade motorunu GroupDocs.Search ile birleştirdiğinizde zahmetsiz hale gelir; bu kütüphane, ışık hızıyla desen eşleştirme için bir indeks oluşturur. Önümüzdeki birkaç dakikada kütüphaneyi nasıl kuracağınızı, bir indeks oluşturacağınızı, dosyaları ekleyeceğinizi ve hem basit metin‑tabanlı hem de nesne‑yönelimli regex sorgularını nasıl çalıştıracağınızı göreceksiniz. Sonunda, herhangi bir Java uygulamasına sağlam desen‑eşleştirme araması eklemeye hazır olacaksınız. + +## Hızlı Yanıtlar +- **Ana kütüphane nedir?** GroupDocs.Search for Java +- **Nasıl başlarım?** Maven bağımlılığını ekleyin ve bir `Index` nesnesi oluşturun +- **İçeriği regex ile filtreleyebilir miyim?** Evet – içerik‑filtreleme senaryoları için regex sorgularını kullanın +- **Lisans gerekir mi?** Üretim kullanımı için ücretsiz deneme veya geçici lisans gereklidir +- **Hangi JDK sürümü destekleniyor?** Java 8 veya üzeri + +## Regex Araması Nedir? +Regex araması, tarih, e‑posta adresi veya yinelenen karakterler gibi desenleri birçok dosyada tek bir işlemle bulmanızı sağlar. Düz metin sorgusunu, içeriği anlık olarak çıkartabilen veya engelleyebilen güçlü, kural‑tabanlı bir tarayıcıya dönüştürür. + +## Neden Regex Araması için GroupDocs.Search Kullanmalı? +GroupDocs.Search, belgeleri bir kez indeksler ve ardından her sorgu için bu indeksi yeniden kullanır; bu da ham dosya taramaya kıyasla **10×'ye kadar daha hızlı** aramalar sağlar. Kütüphane **30+ dosya formatını** (PDF, DOCX, XLSX, PPTX, TXT, HTML ve daha fazlası) destekler ve tüm dosyayı belleğe yüklemeden çok sayfalı belgeleri işleyebilir. + +## Önkoşullar +- Java Development Kit (JDK) 8 veya üzeri +- Bağımlılık yönetimi için Maven +- Java düzenli ifadeleri konusunda temel bilgi + +### Gerekli Kütüphaneler ve Bağımlılıklar +Maven projenize GroupDocs.Search ekleyin: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +Alternatif olarak, en son JAR dosyasını [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/) adresinden indirebilirsiniz. + +### Lisans Edinme +Ücretsiz deneme veya geçici lisansı [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) üzerinden edinin ve uygulama başlatıldığında yükleyin. + +## Java için GroupDocs.Search Kurulumu + +### Kurulum Bilgileri +1. **Maven Entegrasyonu:** Yukarıda gösterilen depo ve bağımlılığı `pom.xml` dosyanıza ekleyin. +2. **Doğrudan İndirme:** JAR dosyalarını projenizin sınıf yoluna yerleştirin. +3. **Lisans Uygulaması:** Uygulama başlatıldığında lisans dosyasını yükleyin. + +```java +import com.groupdocs.search.*; + +public class SearchSetup { + public static void main(String[] args) { + // Initialize the index by specifying a directory. + String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; + Index index = new Index(indexFolder); + + System.out.println("Index created successfully at: " + indexFolder); + } +} +``` + +## Temel Bileşenler +`Index` sınıfı, belgelerinizden çıkarılan aranabilir tokenları saklayan temel bileşendir. Orijinal dosyaları yeniden okumadan herhangi bir terim veya deseni hızlıca bulmanızı sağlar. + +## Dizini Nasıl Oluşturulur +Bir indeks oluşturmak basittir: indeks dosyalarının saklanacağı klasör yolunu belirterek `Index` sınıfını örnekleyin. Yapıcı, ilk kullanımda gerekli veritabanı dosyalarını oluşturur ve belge ekleme ve arama için motoru hazırlar. Oluşturulduktan sonra aynı indeksi tüm sorgular için yeniden kullanın. + +```java +String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; +Index index = new Index(indexFolder); +``` + +## Belgeler Nasıl Eklenir +Bir dosyayı aranabilir hâle getirmek için `index.add` metodunu, dosya yolunu gösteren bir `Document` (veya `DocumentInfo`) örneğiyle çağırın. Kütüphane içeriği ayrıştırır, tokenları çıkarır ve indekse kaydeder. Bu işlem tek dosyalar için ya da toplu olarak yapılabilir; güncellemeler artımlı olarak birleştirilir. + +```java +index.add("YOUR_DOCUMENT_DIRECTORY"); +system.out.println("Documents added to the index."); +``` + +## Metin Formunda Düzenli İfade Araması Nasıl Yapılır +`RegexQuery` düzenli ifade tabanlı bir arama sorgusunu tanımlar. Düz metin deseniyle bir `RegexQuery` oluşturun ve `Index` sınıfının `search` metoduna gönderin. Motor, deseni indekslenmiş tokenlara karşı değerlendirir ve eşleşen belge referanslarını döndürür; tek seferlik aramaları hızlı ve basit hâle getirir. + +```java +String query1 = "^((.)\\2{1,})"; +``` + +## Nesne Formunda Düzenli İfade Araması Nasıl Yapılır +`RegexQuery` aynı zamanda bir nesne olarak da oluşturulabilir ve birden çok aramada yeniden kullanılabilir. Sorguyu bir kez tanımlayın, büyük/küçük harf duyarsızlığı veya bulanık eşleşme gibi seçenekleri yapılandırın ve `index.search` metodunu tekrar tekrar çağırın. Bu yaklaşım, aynı deseni birçok farklı belge kümesine uyguladığınızda performansı artırır. + +```java +SearchResult result1 = index.search(query1); +system.out.println("Number of occurrences found: " + result1.getDocumentCount()); +``` + +## İçerik Filtreleme Regex Kullanım Senaryoları +Aşağıdaki gibi belirli desenlere uyan içeriği otomatik olarak engellemek veya işaretlemek için regex kullanabilirsiniz: + +- Spam filtreleme için tekrarlanan karakterlerin tespiti +- Veri gizliliği kontrolleri için kredi kartı benzeri dizileri bulma +- İleri işleme için tarih veya kimlik numaralarını çıkartma + +## Pratik Uygulamalar +1. **Belge Yönetim Sistemleri:** Sözleşmeleri, faturaları veya politikaları desenle (ör. fatura numaraları) bulun. +2. **İçerik Moderasyonu:** Forumlarda veya sohbet uygulamalarında kullanıcı tarafından oluşturulan metni düzenlemek için regex kuralları uygulayın. +3. **Veri Çıkarma:** Yapılandırılmamış PDF'lerden veya Word dosyalarından sipariş numaraları gibi yapılandırılmış verileri çekin. + +## Performans Düşünceleri +- **Dizin Güncellemeleri:** Sonuçların güncel kalması için kaynak dosyalar değiştiğinde `index.add` çağırın. +- **Bellek Yönetimi:** 1 milyonun üzerindeki belge kümesi için yığın kullanımını kontrol altında tutmak amacıyla artımlı indekslemeyi etkinleştirin. +- **Regex Tasarımı:** Desenleri kısa tutun; `\d{4}-\d{2}-\d{2}` gibi bir desen, `.*` gibi joker karakter ağırlıklı bir ifadeye göre 3× daha hızlı çalışır. + +## Sonuç +Artık GroupDocs.Search kullanarak Java'da **regex araması nasıl yapılır** konusunda, kütüphaneyi kurmaktan bir indeks oluşturmaya, hem metin‑tabanlı hem de nesne‑yönelimli sorgular çalıştırmaya kadar her şeyi biliyorsunuz. Bu teknikler, belge portalı, uyumluluk tarayıcısı veya veri madenciliği hattı gibi herhangi bir Java uygulamasına hızlı, desen‑bilinçli arama eklemenizi sağlar. + +## Sıkça Sorulan Sorular + +**S:** GroupDocs.Search içinde metin‑tabanlı ve nesne‑tabanlı regex sorguları arasındaki fark nedir? +**C:** Metin‑tabanlı sorgular hızlı tek‑satır komutlardır, nesne‑tabanlı sorgular ise yeniden kullanılabilir, tip‑güvenli tanımlar sağlar ve birden çok arama arasında saklanıp tekrar kullanılabilir. + +**S:** GroupDocs.Search, PDF veya Excel dosyaları gibi metin dışı belgeleri indeksleyebilir mi? +**C:** Evet, kütüphane PDF, DOCX, XLSX, PPTX ve 30'dan fazla diğer formatta aranabilir metin çıkarır. + +**S:** Yeni dosyalar ekledikten sonra mevcut arama indeksini nasıl güncellerim? +**C:** Yeni veya değiştirilmiş belgelerle `index.add` çağırın; kütüphane tüm indeksi yeniden oluşturmak zorunda kalmadan değişiklikleri birleştirir. + +**S:** GroupDocs.Search ile regex kullanırken yaygın tuzaklar nelerdir? +**C:** Çok geniş desenler (ör. `.*`) performans düşüşüne yol açabilir ve hatalı ifadeler sonuç döndürmez. Desenleri önce örnek bir veri kümesi üzerinde test edin. + +**S:** Daha gelişmiş GroupDocs.Search eğitimlerine nereden ulaşabilirim? +**C:** Derinlemesine kılavuzlar, API referansları ve örnek projeler için [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) adresini ziyaret edin. + +--- + +**Son Güncelleme:** 2026-07-31 +**Test Edilen Sürüm:** GroupDocs.Search 25.4 +**Yazar:** GroupDocs + +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` + +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## İlgili Eğitimler + +- [Master GroupDocs.Search Java: Verimli Belge Arama ve Dizin Yönetimi](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [GroupDocs.Search Java'da Ustalık: Bulanık Arama ve Belge İndeksleme Rehberi](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [Java'da GroupDocs.Search ile Metin Nasıl İndekslenir Rehberi](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/turkish/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/turkish/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..7d24fd42c --- /dev/null +++ b/content/turkish/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,276 @@ +--- +date: '2026-07-31' +description: GroupDocs.Search ile bir indekse belge ekleyerek Java'da case insensitive + search uygulamayı, indeksleme sırasında karakter değiştirme kullanarak metni normalize + etmeyi öğrenin. +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: Case insensitive search java, belgeleri bir indekse eklemenizi ve + harf durumunu düşünmeden sorgulamanızı sağlar. Bu kılavuz, GroupDocs.Search'in indeksleme + sırasında metni hızlı ve güvenilir sonuçlar için nasıl normalize ettiğini gösterir. +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Case Insensitive Search Java – GroupDocs ile Belgeleri İndekse Ekleyin +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: Java'da Case‑Insensitive Search için Belgeleri İndekse Ekleyin +type: docs +url: /tr/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# Java'da Büyük/Küçük Harfe Duyarsız Arama için Belgeleri Diziye Ekle + +Kullanıcıların nasıl yazdıklarından bağımsız olarak güvenilir bir şekilde bilgi bulabilen **case insensitive search java**'a ihtiyacınız olduğunda, metni normalleştirerek belgeleri bir dizine eklemek anahtardır. Bu öğreticide, GroupDocs.Search for Java'ı yapılandırarak indekslediğiniz her belgenin indeksleme sırasında otomatik olarak küçük harfe (veya başka bir şekilde) dönüştürülmesini sağlayacağız, böylece ek sorgu zamanı mantığına ihtiyaç duymadan büyük/küçük harfe duyarsız sonuçlar garantilenir. + +## Hızlı Yanıtlar +- **“add documents to index” ne anlama geliyor?** Bu, kaynak dosyaların daha sonra sorgulanabilmesi için aranabilir bir veri yapısına yüklenmesi anlamına gelir. +- **Karakter değiştirmeyi neden kullanmalıyım?** Bu, her karakteri (genellikle küçük harfe) normalleştirir, böylece aramalar otomatik olarak büyük/küçük harf farkını görmez. +- **Bir lisansa ihtiyacım var mı?** Geliştirme için ücretsiz deneme yeterlidir; üretim dağıtımları için tam lisans gereklidir. +- **Hangi Java sürümü gerekiyor?** Java 8 veya daha yenisi; kütüphane optimum performans için Java 11+ hedeflemektedir. +- **Gerektiğinde büyük/küçük harfe duyarlı aramaya geçebilir miyim?** Evet—arama seçenekleri, sorgu başına büyük/küçük harf duyarlılığını değiştirmenize izin verir. + +## GroupDocs.Search'te “add documents to index” ne anlama geliyor? +Kaynak dosyalarınızı (PDF, DOCX, TXT vb.) aranabilir bir dizine yükleyin, böylece motor bunları hızlıca getirebilir. Belgeleri bir dizine eklemek, her dosyayı ayrıştırır, düz metni çıkarır ve hızlı aramalar sağlayan optimize edilmiş bir veri yapısında saklar. + +## İndeksleme sırasında karakter değiştirmeyi neden etkinleştirmelisiniz? +Karakter değiştirme, her karakteri önceden tanımlanmış bir eşdeğere (genellikle küçük harfe) dönüştürür, indeks oluşturulurken. Bu, büyük/küçük harf, aksan veya yerel sembollerdeki farklılıkların arama sonuçlarını etkilememesini sağlar. Metni indeksleme sırasında normalleştirerek, motor sorguları tutarlı bir token kümesiyle eşleştirebilir ve her aramada ek işlem yapmadan hızlı, güvenilir büyük/küçük harfe duyarsız davranış sunar. + +## Önkoşullar +- **GroupDocs.Search for Java** sürüm 25.4 veya yenisi (kütüphane 30'dan fazla dosya formatını destekler ve tüm dosyayı belleğe yüklemeden çok sayfalı belgeleri indeksleyebilir). +- **Java Development Kit (JDK)** 8 veya üzeri yüklü olmalıdır. +- **Maven**'e temel aşinalık (veya JAR'ları manuel ekleme yeteneği). + +## GroupDocs.Search for Java'ı Kurma + +### Maven Kurulumu +Add the GroupDocs repository and dependency to your `pom.xml`: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### Doğrudan İndirme +Maven kullanmak istemiyorsanız, resmi siteden en son JAR'ı alın: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Lisans Alımı +- **Free Trial** – denemeye başlamak için bir deneme lisansı indirin. +- **Temporary License** – GroupDocs portalından uzatılmış bir test lisansı talep edin. +- **Full License** – yayına hazır olduğunuzda bir üretim lisansı satın alın. + +### Temel Başlatma (Dizini Oluşturma) +The following snippet creates an index folder and enables character replacements: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## Uygulama Rehberi + +### Dizin Ayarlarında Karakter Değiştirmeyi Etkinleştirme +Bu özelliği etkinleştirmek, motorun indeksleme sırasında karakterleri değiştirmesini sağlar; bu, büyük/küçük harfe duyarsız davranışın temel adımıdır. + +#### Adım 1: `IndexSettings`'i Yapılandırma +`IndexSettings`, dizinin metni nasıl saklayıp işlediğini kontrol eden yapılandırma nesnesidir. `useCharacterReplacements` özelliğini **true** olarak ayarlayarak otomatik küçük harfe dönüştürmeyi (veya sağladığınız herhangi bir özel eşlemeyi) etkinleştirirsiniz. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### Karakter Değiştirmeleri Yapılandırma +Her karakteri onun küçük harf karşılığına (veya ihtiyacınız olan herhangi bir özel eşlemeye) eşleyin. + +#### Adım 2: Değiştirme Çiftlerini Tanımlama ve Ekleme +Değiştirme sözlüğü `'A' → 'a'`, `'É' → 'e'` gibi çiftleri tutar. Bu çiftleri indekslemeden önce eklemek, her tokenın normalleştirilmesini sağlar. + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### Belgeleri İndeksleme +Dizin hazır olduğuna göre, herhangi bir klasörden **add documents to index** yapabilirsiniz. + +#### Adım 3: İndeksleme İçin Belgeleri Ekleme +GroupDocs.Search hedef dizini tarar, her desteklenen dosya tipinden metni çıkarır, değiştirme haritasını uygular ve tokenları dizin depolamasına yazar. + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### Büyük/Küçük Harfe Duyarlı Arama Yap (İsteğe Bağlı) + +#### Adım 4: Büyük/Küçük Harfe Duyarlı Aramaları Gerçekleştirme +`SearchOptions`, sorgu davranışını yapılandırır; örneğin büyük/küçük harf duyarlılığını değiştirmek, aramaların nasıl gerçekleştirileceği üzerinde ayrıntılı kontrol sağlar. +`SearchOptions.setUseCaseSensitiveSearch(true)` motoru belirli bir sorgu sırasında büyük ve küçük harf karakterlerini ayrı olarak ele almaya zorlar, varsayılan büyük/küçük harfe duyarsız davranışı geçersiz kılar. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## Pratik Uygulamalar +1. **Pazarlama Kampanyaları** – Ürün adlarını normalleştirerek satış ekiplerinin varlıkları büyük/küçük harf endişesi olmadan bulmasını sağlar. +2. **Müşteri Desteği** – Kullanıcı “login” ya da “Login” yazsa da doğru makaleyi döndüren yardım masası arama kutularını güçlendirir. +3. **E‑ticaret Katalogları** – Alışveriş yapanların ürün başlıklarını nasıl yazarlarsa yazsınlar bulmasını sağlayarak dönüşüm oranlarını artırır. + +## Performans Düşünceleri +- **Kaynak Dosyaları Düzenleyin** – Düzenli bir klasör hiyerarşisi, **add documents to index** adımında tarama süresini azaltır. +- **Belleği İzleyin** – Büyük veri kümelerini indekslemek önemli RAM tüketebilir; dosyaları 500 – 1 000 öğe gruplarında işlemek yığın kullanımını kontrol altında tutar. +- **Asenkron İndeksleme** – Destekleniyorsa, indekslemeyi arka plan iş parçacığında çalıştırarak UI'nin yanıt vermesini sağlayın ve kullanıcı işlemlerini engellemekten kaçının. + +## Yaygın Sorunlar ve Sorun Giderme +| Semptom | Muhtemel Neden | Çözüm | +|---------|----------------|-------| +| Bilinen bir terim için sonuç dönmüyor | Karakter değiştirmeleri etkinleştirilmemiş | `settings.setUseCharacterReplacements(true)` ayarlandığını ve değiştirme haritasının gerekli karakterleri içerdiğini doğrulayın. | +| İndeksleme sırasında bellek yetersizliği hatası | Aynı anda çok fazla büyük dosya indeksleniyor | Daha küçük partilerde indeksleyin veya JVM yığınını artırın (`-Xmx4g`). | +| Arama beklenmedik şekilde büyük/küçük harfe duyarlı sonuçlar döndürüyor | `SearchOptions.setUseCaseSensitiveSearch(true)` ayarlanmış | Varsayılan büyük/küçük harfe duyarsız davranış için kaldırın veya `false` olarak ayarlayın. | +| Dizin yükleme süresi beklentileri aşıyor | Verimsiz klasör düzeni veya SSD kullanılmıyor | Dosyaları yeniden düzenleyin, kullanılmayan belgeleri temizleyin ve dizini hızlı bir SSD'de depolayın. | +| Özel karakterler yok sayılıyor | Değiştirme haritasında Unicode girişleri eksik | “é”, “ß”, “ø” gibi karakterler için istenen eşlemeleri ekleyin. | + +## Sık Sorulan Sorular + +**Q: İndeksleme sırasında özel karakterleri (ör. “é”, “ß”) nasıl yönetebilirim?** +A: Bu karakterleri değiştirme haritanıza ekleyin, ASCII eşdeğerlerine eşleyin veya arama gereksinimlerine göre değiştirmeden bırakın. + +**Q: Karakter değiştirmeyi belirli bir dile sınırlayabilir miyim?** +A: Evet. Sözlüğe eklemeden önce yalnızca hedef dilin karakterlerini içeren özel bir değiştirme dizisi oluşturun. + +**Q: Dizinin yüklenmesi uzun sürerse ne yapmalıyım?** +A: Klasör yapısını optimize edin, gereksiz dosyaları kaldırın ve dizini yüksek hızlı bir SSD'de depolayın. Artımlı indeksleme de yükleme süresini azaltır. + +**Q: İndeksleme sonrası karakter değiştirmeleri geri alınabilir mi?** +A: Hayır. Değiştirmeler indekslenmiş veriye yerleşiktir; değiştirmek için dizini yeni ayarlarla yeniden oluşturmanız gerekir. + +**Q: Daha ayrıntılı API belgelerini nerede bulabilirim?** +A: Resmi dokümantasyon ve API referansı kapsamlı detaylar sunar (aşağıdaki Kaynaklara bakın). + +## Kaynaklar +- [Dokümantasyon](https://docs.groupdocs.com/search/java/) +- [API Referansı](https://reference.groupdocs.com/search/java) +- [GroupDocs.Search İndir](https://releases.groupdocs.com/search/java/) +- [GitHub Deposu](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [Ücretsiz Destek Forum](https://forum.groupdocs.com/c/search/10) +- [Geçici Lisans Bilgileri](https://purchase.groupdocs.com/temporary-license/) + +--- + +**Son Güncelleme:** 2026-07-31 +**Test Edilen:** GroupDocs.Search 25.4 for Java +**Yazar:** GroupDocs + +## İlgili Öğreticiler + +- [GroupDocs.Search Java'da Karakter Değiştirme: Metin Aramasını ve İndekslemeyi Geliştiren Kapsamlı Rehber](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [Belgeleri Diziye Ekle: GroupDocs ile Büyük/Küçük Harfe Duyarlı Java Araması](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [GroupDocs.Search for Java ile Belgeleri Diziye Nasıl Eklenir](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/turkish/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/turkish/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..95eea5b9c --- /dev/null +++ b/content/turkish/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,305 @@ +--- +date: '2026-07-31' +description: GroupDocs kullanarak özel bir console logger uygulayarak ve yerleşik + FileLogger'ı kullanarak etkili izleme için sağlam .NET günlüğü oluşturmayı öğrenin. +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: GroupDocs kullanarak özel bir console logger uygulayarak ve yerleşik + FileLogger'ı kullanarak etkili izleme için sağlam .NET günlüğü oluşturmayı öğrenin. +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: GroupDocs Console Logger ile Sağlam .NET Günlüğü Oluşturun +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: GroupDocs Console Logger ile Sağlam .NET Günlüğü Oluşturun +type: docs +url: /tr/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# GroupDocs Konsol Günlüğü ile Dayanıklı .NET Günlük Kaydı Oluşturma + +## Giriş + +.NET uygulamalarınızda hataları takip etmek ve işlemleri izlemek zor mu? **Dayanıklı .NET günlük kaydı oluşturmak**, performansı izlemek, sorunları ayıklamak ve sorunsuz çalışmayı sürdürmek için gereklidir. Bu öğretici, GroupDocs.Search kullanarak özel bir konsol günlüğü oluşturmayı ve aynı zamanda GroupDocs.Redaction for .NET'i nasıl entegre edeceğinizi gösterir. Sonunda, mevcut kod tabanınıza sorunsuz bir şekilde uyan şeffaf, sürdürülebilir bir günlükleme çözümüne sahip olacaksınız. + +## Hızlı Yanıtlar +- **Özel günlüğün ne yaptığı?** Geliştirme sırasında anlık geri bildirim için günlük girişlerini doğrudan konsola yazar. +- **Hangi GroupDocs bileşeni dosya günlüklemesini sağlar?** Yerleşik `FileLogger` sınıfı kalıcı günlük dosyalarını yönetir. +- **Lisans gerekiyor mu?** Test için geçici bir lisans yeterlidir; üretim için tam lisans gereklidir. +- **Hangi .NET sürümleri destekleniyor?** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **Çözüm çok iş parçacıklı güvenli mi?** Evet—hem `ConsoleLogger` hem de `FileLogger` eşzamanlı kullanım için tasarlanmıştır. + +## “Dayanıklı .NET günlük kaydı oluşturma” nedir? +**Dayanıklı .NET günlük kaydı oluşturmak**, bir uygulamanın tüm katmanlarında hataları, uyarıları ve bilgi mesajlarını yakalayan güvenilir, yüksek performanslı bir günlükleme hattı kurmak anlamına gelir. GroupDocs ile hem konsol hem de dosya hedeflerini kullanarak ve yapılandırmayı basit tutarak bunu başarabilirsiniz. + +## .NET günlük kaydı için GroupDocs neden kullanılmalı? +GroupDocs **30+ .NET platformunu** destekler ve **2 GB**'a kadar belgeleri belirgin bir performans kaybı olmadan işleyebilir. Günlükleme API'leri hafif, çok iş parçacıklı güvenli ve mevcut istisna‑işleme desenleriyle sorunsuz bir şekilde bütünleşir, size kanıtlanmış, kurumsal düzeyde bir çözüm sunar. + +## Önkoşullar + +- **Gerekli Kütüphaneler ve Sürümler:** .NET için GroupDocs.Search ve .NET için GroupDocs.Redaction (uyumlu en son sürümler). +- **Ortam Kurulumu:** Visual Studio 2022 veya herhangi bir .NET uyumlu IDE. +- **Bilgi Önkoşulları:** C# sözdizimi ve temel günlükleme kavramlarına aşinalık. + +## .NET için GroupDocs.Redaction Kurulumu + +İlk olarak, projenize GroupDocs.Redaction ekleyin. İş akışınıza en uygun yöntemi seçin. + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +“GroupDocs.Redaction”ı arayın ve en son sürümü yükleyin. + +### Lisans Alımı + +Başlamak için geçici bir lisans alabilir veya tam bir lisans satın alabilirsiniz. Bu, tüm özellikleri sınırlama olmadan keşfetmenizi sağlar. Lisans edinme hakkında daha fazla ayrıntı için [GroupDocs'un resmi sitesini](https://purchase.groupdocs.com/temporary-license/) ziyaret edin. + +### Temel Başlatma ve Kurulum + +`Redactor` sınıfı, desteklenen belgelerde içeriği değiştirmek ve redakte etmek için API'ler sunar. +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## Uygulama Kılavuzu + +### GroupDocs ile özel bir konsol günlüğü nasıl uygulanır? + +`ConsoleLogger` örneği oluşturarak ve bunu `SearchOptions` ya da bir `ILogger` kabul eden herhangi bir GroupDocs bileşenine geçirerek özel günlüğünüzü yükleyin. Günlük, her mesajı `Console.WriteLine`'a yazar, kütüphanenin ne yaptığını gerçek zamanlı olarak görmenizi sağlar ve geliştirme sırasında sorunları hızlıca tespit etmenize yardımcı olur. + +`ConsoleLogger` sınıfı, günlük mesajlarını doğrudan konsola yazmak için `ILogger` arayüzünü uygular. +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Adım 1: Özel Günlüğünüzü Tanımlayın** +`ConsoleLogger` adlı yeni bir sınıf oluşturun: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Adım 2: GroupDocs.Search ile Entegre Edin** + +`SearchOptions`, arama davranışını yapılandırır ve günlükleme için bir `ILogger` kabul eder. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### FileLogger nedir ve ne zaman kullanılmalı? + +`FileLogger` sınıfı `ILogger` arayüzünü uygular ve günlük girişlerini diskte bir dosyaya kalıcı olarak yazar, bu da denetim izlerinin gerektiği üretim ortamları için idealdir. GroupDocs tarafından sağlanan `FileLogger` sınıfı, günlük girişlerini belirli bir dosyaya yazar, bu da kalıcı denetim izlerine ihtiyaç duyduğunuz üretim ortamları için mükemmeldir. Günlük döndürme, dosya boyutu limitleri ve günlük seviyelerini operasyonel gereksinimlerinize göre yapılandırabilirsiniz. + +`FileLogger` sınıfı `ILogger` arayüzünü uygular ve günlük girişlerini diskte bir dosyaya kalıcı olarak yazar. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### .NET günlük kaydı için GroupDocs neden seçilmeli? + +GroupDocs, **nicel** bir avantaj sunar: **50'den fazla çıktı formatını** destekler ve **yüzlerce sayfalık belgeleri** tüm dosyayı belleğe yüklemeden işleyebilir. Günlükleme altyapısı, her günlük girişi için **2 ms**'den az ek yük ekler, böylece yoğun yük altında bile performans optimal kalır. + +## Pratik Uygulamalar + +Bu günlükleme tekniklerinin öne çıktığı bazı pratik senaryolar şunlardır: + +1. **Uygulama İzleme:** Geliştirme sırasında canlı tanılamaları görmek için `ConsoleLogger` kullanın. +2. **Denetim İzleri:** Düzenleyici raporlamalar için uyum seviyesinde günlükler tutmak amacıyla `FileLogger` dağıtın. +3. **Hata Ayıklama:** Karmaşık arama hatlarında sorunları tespit etmek için ayrıntılı izleme mesajlarından yararlanın. +4. **Performans Analizi:** Dar boğazları belirlemek ve kaynak kullanımını optimize etmek için günlük zaman damgalarını inceleyin. + +## Performans Düşünceleri + +Günlüklemeyi hızlı ve verimli tutmak için: + +- **Günlük Ayrıntısını Sınırlayın:** Üretimde aşırı I/O'dan kaçınmak için günlüğün seviyesini `Info` veya `Warning` olarak ayarlayın. +- **Verimli Kaynak Kullanımı:** `FileLogger`'ı maksimum 10 MB dosya boyutu ile yapılandırın ve otomatik döndürmeyi etkinleştirin. +- **Bellek Yönetimi:** Kaynakları hızlıca serbest bırakmak için logger örneklerini `using` bloklarıyla veya açık `Dispose()` çağrılarıyla serbest bırakın. + +## Sıkça Sorulan Sorular + +**S: Özel konsol günlüğünü çok iş parçacıklı bir uygulamada kullanabilir miyim?** +C: Evet—hem `ConsoleLogger` hem de `FileLogger` çok iş parçacıklı güvenlidir, bu yüzden paralel görevlerden yarış koşulları olmadan günlükleyebilirsiniz. + +**S: GroupDocs.Search ve GroupDocs.Redaction için ayrı bir lisansa ihtiyacım var mı?** +C: Tek bir GroupDocs lisansı, Search ve Redaction dahil tüm modülleri kapsar, satın almayı basitleştirir. + +**S: FileLogger için günlük dosyası konumunu nasıl değiştiririm?** +C: `FileLogger` örneğini oluştururken `LogFilePath` özelliğini ayarlayın, örn. `new FileLogger("C:\\Logs\\app.log")`. + +**S: GroupDocs hangi günlük seviyelerini destekliyor?** +C: Kütüphane `Debug`, `Info`, `Warning`, `Error` ve `Critical` seviyelerini sağlar, çıkış üzerinde ayrıntılı kontrol imkanı verir. + +**S: Konsol ve dosya günlüklemesini aynı anda birleştirmek mümkün mü?** +C: Kesinlikle—her iki `ConsoleLogger` ve `FileLogger`'a mesajları yönlendiren bir birleşik logger oluşturabilirsiniz. + +## Kaynaklar + +- [GroupDocs Redaction Dokümantasyonu](https://docs.groupdocs.com/search/net/) +- [API Referansı](https://reference.groupdocs.com/redaction/net) +- [GroupDocs Kütüphanelerini İndir](https://releases.groupdocs.com/search/net/) +- [Ücretsiz Destek Forumları](https://forum.groupdocs.com/c/search/10) +- [Geçici Lisans Alımı](https://purchase.groupdocs.com/temporary-license/) + +## Sonuç + +Bu rehberde, özel bir konsol günlüğü oluşturarak ve GroupDocs'ün yerleşik `FileLogger`'ını kullanarak **dayanıklı .NET günlük kaydı oluşturmayı** gösterdik. Bu araçlar, geliştirme sırasında gerçek zamanlı içgörü sağlar ve üretim için güvenilir, kalıcı günlükler sunar. Farklı günlük seviyesi yapılandırmalarını keşfedin, birleşik logger'larla deney yapın ve çözümü tam yığın gözlemlenebilirlik için daha büyük hizmetlere entegre edin. + +**Sonraki Adımlar** + +- Farklı günlük seviyesi ayarlarını test ederek detay ve performans arasındaki ideal dengeyi bulun. +- `FileLogger`'a yapılandırılmış günlükleme (JSON çıktısı) ekleyerek log‑analiz platformlarına daha kolay entegrasyon sağlayın. +- Search ve Annotation gibi GroupDocs'ün diğer modüllerini keşfederek belge işleme hattınızı genişletin. + +--- + +**Son Güncelleme:** 2026-07-31 +**Test Edilen:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**Yazar:** GroupDocs + +--- + +## İlgili Öğreticiler + +- [GroupDocs.Search .NET için Hata İşleme ve Günlükleme Öğreticileri](/search/net/exception-handling-logging/) +- [.NET'te Belge Yönetimi için GroupDocs.Search ve Redaction Uygulaması](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [.NET'te GroupDocs Search ve Redaction Uzmanlığı: İleri Düzey Belge Yönetimi](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file diff --git a/content/vietnamese/java/searching/groupdocs-search-java-regex-tutorial/_index.md b/content/vietnamese/java/searching/groupdocs-search-java-regex-tutorial/_index.md index c4ddaea3c..ae28e157f 100644 --- a/content/vietnamese/java/searching/groupdocs-search-java-regex-tutorial/_index.md +++ b/content/vietnamese/java/searching/groupdocs-search-java-regex-tutorial/_index.md @@ -1,37 +1,101 @@ --- -date: '2026-02-01' -description: Học cách tìm kiếm bằng regex trong Java và cách tạo chỉ mục với GroupDocs.Search. - Hướng dẫn này bao gồm cài đặt, lập chỉ mục và các ví dụ Java về tìm kiếm bằng regex. +date: '2026-07-31' +description: Tìm hiểu cách regex search trong Java bằng GroupDocs.Search. Hướng dẫn + chi tiết này hiển thị việc setup, index creation và regex query examples cho fast + text document analysis. keywords: -- regex searches -- GroupDocs.Search for Java -- Java text document analysis -title: 'Cách tìm kiếm bằng Regex trong Java: Thành thạo GroupDocs.Search cho Phân - tích tài liệu văn bản' +- how to regex search +- regex pattern matching java +- search pdf with regex +- java regex search examples +- regex search tutorial java +lastmod: '2026-07-31' +og_description: Cách regex search trong Java bằng GroupDocs.Search cho phép fast pattern + matching trên PDFs, Word và text files. Hãy làm theo hướng dẫn này để set up, index + documents và chạy powerful regex queries. +og_image_alt: 'Developer guide: Regex search in Java using GroupDocs.Search' +og_title: Hướng dẫn cách Regex Search trong Java với GroupDocs.Search +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + headline: How to Regex Search in Java with GroupDocs.Search Guide + type: TechArticle +- description: Learn how to regex search in Java using GroupDocs.Search. This step‑by‑step + tutorial shows setup, index creation, and regex query examples for fast text document + analysis. + name: How to Regex Search in Java with GroupDocs.Search Guide + steps: + - name: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + text: '**Maven Integration:** Add the repository and dependency shown above to + your `pom.xml`.' + - name: '**Direct Download:** Place the JAR files on your project’s classpath.' + text: '**Direct Download:** Place the JAR files on your project’s classpath.' + - name: '**License Application:** Load the license file at application start‑up.' + text: '**License Application:** Load the license file at application start‑up.' + - name: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + text: '**Document Management Systems:** Locate contracts, invoices, or policies + by pattern (e.g., invoice numbers).' + - name: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + text: '**Content Moderation:** Apply regex rules to moderate user‑generated text + in forums or chat apps.' + - name: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + text: '**Data Extraction:** Pull structured data like order numbers from unstructured + PDFs or Word files.' + type: HowTo +- questions: + - answer: GroupDocs.Search for Java + question: What is the primary library? + - answer: Add the Maven dependency and instantiate an `Index` object + question: How do I start? + - answer: Yes – use regex queries for content‑filtering scenarios + question: Can I filter content with regex? + - answer: A free trial or temporary license is required for production use + question: Do I need a license? + - answer: Java 8 or higher + question: Which JDK version is supported? + type: FAQPage +tags: +- regex search +- GroupDocs.Search +- Java document processing +- text analysis +title: Hướng dẫn cách Regex Search trong Java với GroupDocs.Search type: docs url: /vi/java/searching/groupdocs-search-java-regex-tutorial/ weight: 1 --- -# Cách Tìm Kiếm Regex trong Java: Thành Thạo GroupDocs.Search cho Phân Tích Tài Liệu Văn Bản +# Cách tìm kiếm bằng Regex trong Java với GroupDocs.Search -Tìm kiếm trong một lượng lớn tài liệu văn bản một cách hiệu quả có thể là thách thức. **How to regex search** trong Java trở nên đơn giản với GroupDocs.Search, một thư viện cung cấp khả năng khớp mẫu mạnh mẽ. Trong hướng dẫn này, bạn sẽ học cách thiết lập môi trường, tạo chỉ mục, thêm tài liệu và thực thi các truy vấn regex dựa trên văn bản cũng như dựa trên đối tượng. Khi hoàn thành, bạn sẽ có một **regex search tutorial Java** vững chắc để áp dụng vào các dự án thực tế. +Searching through thousands of text documents can feel like looking for a needle in a haystack. **How to regex search** trong Java trở nên dễ dàng khi bạn kết hợp engine biểu thức chính quy mạnh mẽ của ngôn ngữ với GroupDocs.Search, một thư viện xây dựng chỉ mục cho việc khớp mẫu siêu nhanh. Trong vài phút tới, bạn sẽ thấy cách cài đặt thư viện, tạo chỉ mục, thêm tệp và chạy cả truy vấn regex dựa trên văn bản đơn giản và dạng đối tượng. Khi kết thúc, bạn sẽ sẵn sàng tích hợp tìm kiếm dựa trên mẫu mạnh mẽ vào bất kỳ ứng dụng Java nào. -## Quick Answers +## Câu trả lời nhanh - **Thư viện chính là gì?** GroupDocs.Search for Java -- **Bắt đầu như thế nào?** Thêm phụ thuộc Maven và khởi tạo đối tượng `Index` -- **Có thể lọc nội dung bằng regex không?** Có – sử dụng truy vấn regex cho các kịch bản lọc nội dung regex -- **Cần giấy phép không?** Cần một bản dùng thử miễn phí hoặc giấy phép tạm thời cho môi trường sản xuất -- **Phiên bản JDK nào được hỗ trợ?** Java 8 trở lên +- **Làm sao để bắt đầu?** Add the Maven dependency and instantiate an `Index` object +- **Tôi có thể lọc nội dung bằng regex không?** Yes – use regex queries for content‑filtering scenarios +- **Tôi có cần giấy phép không?** A free trial or temporary license is required for production use +- **Phiên bản JDK nào được hỗ trợ?** Java 8 or higher -## What is Regex Search? -Tìm kiếm bằng biểu thức chính quy (regex) cho phép bạn xác định các mẫu văn bản—như ngày tháng, địa chỉ email, hoặc ký tự lặp lại—trên nhiều tài liệu trong một thao tác duy nhất. GroupDocs.Search biên dịch các mẫu này thành các truy vấn hiệu quả, chạy nhanh ngay cả trên các bộ dữ liệu lớn. +## Tìm kiếm Regex là gì? +Regex search lets you locate patterns such as dates, email addresses, or repeated characters across many files in a single operation. It turns a plain text query into a powerful, rule‑based scanner that can extract or block content on the fly. -## Why Use GroupDocs.Search for Regex Search? -- **Speed:** Tìm kiếm dựa trên chỉ mục tránh việc quét lại các tệp thô mỗi lần. -- **Flexibility:** Hỗ trợ cả truy vấn văn bản đơn giản và truy vấn đối tượng phức tạp. -- **Broad Format Support:** Hoạt động với PDF, Word, Excel, văn bản thuần và nhiều định8 trở lên -- Maven để quản lý phụ.Search qua Maven: +## Tại sao nên sử dụng GroupDocs.Search cho tìm kiếm Regex? +GroupDocs.Search lập chỉ mục cho các tài liệu một lần và sau đó tái sử dụng chỉ mục đó cho mọi truy vấn, mang lại các tìm kiếm **lên tới 10× nhanh hơn** so với việc quét tệp thô. Thư viện hỗ trợ **hơn 30 định dạng tệp** (PDF, DOCX, XLSX, PPTX, TXT, HTML và hơn nữa) và có thể xử lý các tệp hàng trăm trang mà không cần tải toàn bộ tệp vào bộ nhớ. + +## Yêu cầu trước +- Java Development Kit (JDK) 8 hoặc cao hơn +- Maven để quản lý phụ thuộc +- Kiến thức cơ bản về biểu thức chính quy Java + +### Thư viện và phụ thuộc cần thiết +Thêm GroupDocs.Search vào dự án Maven của bạn: ```xml @@ -51,14 +115,17 @@ Tìm kiếm bằng biểu thức chính quy (regex) cho phép bạn xác định ``` -Hoặc tải xuống JAR mới nhất từ [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). +Hoặc, tải JAR mới nhất từ [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). -### License Acquisition -Nhận bản dùng thử miễn phí hoặc giấy phép tạm thời từ [GroupDocs.License](https://purchase.groupdocs.com/ của bạn. +### Nhận giấy phép +Nhận bản dùng thử miễn phí hoặc giấy phép tạm thời từ [GroupDocs.License](https://purchase.groupdocs.com/temporary-license/) và tải nó khi khởi động ứng dụng. -## Setting Up GroupDocs.Search for Java +## Cài đặt GroupDocs.Search cho Java -### thuộc như trên vào file ` Đặt các ứng dụng. +### Thông tin cài đặt +1. **Maven Integration:** Thêm repository và dependency được hiển thị ở trên vào `pom.xml` của bạn. +2. **Direct Download:** Đặt các tệp JAR vào classpath của dự án. +3. **License Application:** Tải tệp giấy phép khi khởi động ứng dụng. ```java import com.groupdocs.search.*; @@ -74,82 +141,93 @@ public class SearchSetup { } ``` -## How to Create Index -Tạo chỉ mục là bước đầu tiên để thực hiện tìm kiếm nhanh. Chỉ mục lưu trữ các token có thể tìm kiếm được trích xuất từ tài liệu của bạn. +## Thành phần cốt lõi +Lớp `Index` là thành phần cốt lõi lưu trữ các token có thể tìm kiếm được trích xuất từ tài liệu của bạn. Nó cho phép tra cứu nhanh bất kỳ thuật ngữ hoặc mẫu nào mà không cần đọc lại các tệp gốc. + +## Cách tạo chỉ mục +Việc tạo chỉ mục rất đơn giản: khởi tạo lớp `Index` với đường dẫn thư mục nơi các tệp chỉ mục sẽ được lưu. Hàm khởi tạo tạo các tệp cơ sở dữ liệu cần thiết khi lần đầu sử dụng và chuẩn bị engine để thêm và tìm kiếm tài liệu. Khi đã tạo, hãy tái sử dụng cùng một chỉ mục cho tất cả các truy vấn. ```java String indexFolder = "YOUR_DOCUMENT_DIRECTORY\\output\\AdvancedUsage\\Searching\\RegularExpressionSearch"; Index index = new Index(indexFolder); ``` -## How to Add Documents -Sau khi thư mục chỉ mục tồn tại, hãy đưa các tệp bạn muốn tìm kiếm vào đó. +## Cách thêm tài liệu +Để làm cho một tệp có thể tìm kiếm được, gọi `index.add` với một thể hiện `Document` (hoặc `DocumentInfo`) trỏ tới đường dẫn tệp. Thư viện phân tích nội dung, trích xuất token và lưu chúng vào chỉ mục. Thao tác này có thể thực hiện cho từng tệp riêng lẻ hoặc theo lô, và các cập nhật được hợp nhất một cách tăng dần. ```java index.add("YOUR_DOCUMENT_DIRECTORY"); system.out.println("Documents added to the index."); ``` -## Regular Expression Search in Text Form -Các truy vấn regex dựa trên văn bản nhanh chóng viết và hoàn hảo cho các tìm kiếm một lần. +## Cách thực hiện tìm kiếm biểu thức chính quy dạng văn bản +`RegexQuery` định nghĩa một truy vấn tìm kiếm dựa trên biểu thức chính quy. Tải một `RegexQuery` với mẫu văn bản thuần và truyền nó vào phương thức `search` của `Index`. Engine đánh giá mẫu so với các token đã được lập chỉ mục và trả về các tham chiếu tài liệu khớp, giúp tra cứu một lần nhanh và đơn giản. ```java String query1 = "^((.)\\2{1,})"; ``` +## Cách thực hiện tìm kiếm biểu thức chính quy dạng đối tượng +`RegexQuery` cũng có thể được xây dựng dưới dạng đối tượng và tái sử dụng trong nhiều tìm kiếm. Định nghĩa truy vấn một lần, cấu hình các tùy chọn như không phân biệt chữ hoa/thường hoặc khớp mờ, và gọi `index.search` liên tục. Cách tiếp cận này cải thiện hiệu năng khi cùng một mẫu được áp dụng cho nhiều bộ tài liệu khác nhau. + ```java SearchResult result1 = index.search(query1); system.out.println("Number of occurrences found: " + result1.getDocumentCount()); ``` -## Regular Expression Search in Object Form -Các truy vấn hướng đối tượng cho phép bạn định nghĩa các tìm kiếm có thể tái sử dụng và an toàn kiểu. +## Các trường hợp sử dụng regex để lọc nội dung +Bạn có thể sử dụng regex để tự động chặn hoặc đánh dấu nội dung khớp với các mẫu nhất định, chẳng hạn: +- Phát hiện ký tự lặp lại để lọc spam +- Tìm các chuỗi giống thẻ tín dụng để kiểm tra bảo mật dữ liệu +- Trích xuất ngày tháng hoặc ID để xử lý tiếp theo -```java -SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); -``` +## Ứng dụng thực tiễn +1. **Document Management Systems:** Xác định hợp đồng, hoá đơn hoặc chính sách theo mẫu (ví dụ, số hoá đơn). +2. **Content Moderation:** Áp dụng quy tắc regex để kiểm duyệt văn bản do người dùng tạo trong diễn đàn hoặc ứng dụng chat. +3. **Data Extraction:** Trích xuất dữ liệu có cấu trúc như số đơn đặt hàng từ các PDF hoặc tệp Word không có cấu trúc. -```java -SearchResult result2 = index.search(query2); -system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); -``` +## Các cân nhắc về hiệu năng +- **Index Updates:** Gọi `index.add` mỗi khi các tệp nguồn thay đổi để giữ kết quả luôn mới. +- **Memory Management:** Đối với tập hợp tài liệu vượt quá 1 triệu tài liệu, bật lập chỉ mục tăng dần để giữ việc sử dụng heap trong kiểm soát. +- **Regex Design:** Giữ các mẫu ngắn gọn; một mẫu như `\d{4}-\d{2}-\d{2}` chạy nhanh gấp 3× so với biểu thức có nhiều ký tự đại diện như `.*`. -## Content Filtering Regex Use Cases -Bạn có thể sử dụng regex để tự động chặn hoặc đánh dấu nội dung khớp với các mẫu nhất định, chẳng hạn: +## Kết luận +Bạn đã biết **how to regex search** trong Java sử dụng GroupDocs.Search, từ việc cài đặt thư viện và tạo chỉ mục đến thực thi cả truy vấn dựa trên văn bản và dạng đối tượng. Những kỹ thuật này cho phép bạn thêm tìm kiếm nhanh, nhận biết mẫu vào bất kỳ ứng dụng Java nào, dù bạn đang xây dựng cổng tài liệu, công cụ quét tuân thủ, hay quy trình khai thác dữ liệu. -- Phát hiện ký tự lặp lại để lọc spam -- Tìm các chuỗi giống thẻ tín dụng để kiểm tra bảo mật dữ liệu -- Trích xuất ngày tháng hoặc ID cho các quy trình xử lý tiếp theo +## Câu hỏi thường gặp -## Practical Applications -1. **Document Management Systems:** Cho phép người dùng tìm hợp đồng, hoá đơn hoặc chính sách bằng mẫu. -2. **Content Filtering:** Áp dụng các quy tắc regex lọc nội dung để kiểm duyệt văn bản do người dùng tạo. -3. **Data Analysis:** Rút ra dữ liệu có cấu trúc (ví dụ: số đơn đặt hàng) từ các tệp không có cấu trúc. +**Q:** Sự khác biệt giữa truy vấn regex dựa trên văn bản và dựa trên đối tượng trong GroupDocs.Search là gì? +**A:** Các truy vấn dựa trên văn bản là các dòng lệnh nhanh, trong khi các truy vấn dựa trên đối tượng cung cấp các định nghĩa có thể tái sử dụng, an toàn kiểu, có thể lưu và tái sử dụng trong nhiều tìm kiếm. -## Performance Considerations -- **Index Updates:** Chạy lại `index.add` mỗi khi các tệp nguồn thay đổi. -- **Memory Management:** Đối với kho dữ liệu khổng lồ, theo dõi việc sử dụng heap và cân nhắc chỉ mục tăng dần. -- **Regex Design:** Giữ mẫu ngắn gọn; regex quá rộng có thể làm giảm tốc độ. +**Q:** GroupDocs.Search có thể lập chỉ mục cho các tài liệu không phải văn bản như PDF hoặc Excel không? +**A:** Có, thư viện trích xuất văn bản có thể tìm kiếm được từ PDF, DOCX, XLSX, PPTX và hơn 30 định dạng khác. -## Conclusion -Bạn đã biết **how to regex search** trong Java bằng GroupDocs.Search, từ việc thiết lập thư viện và tạo chỉ mục đến thực thi các truy vấn dựa trên văn bản và dựa trên đối tượng. Những kỹ thuật này sẽ giúp bạn xây dựng các tính năng tìm kiếm nhanh, nhận diện mẫu trong bất kỳ ứng dụng Java nào. +**Q:** Làm sao tôi cập nhật chỉ mục tìm kiếm hiện có sau khi thêm tệp mới? +**A:** Gọi `index.add` với các tài liệu mới hoặc đã sửa đổi; thư viện sẽ hợp nhất các thay đổi mà không cần xây dựng lại toàn bộ chỉ mục. -## FAQ Section +**Q:** Những khó khăn thường gặp khi sử dụng regex với GroupDocs.Search là gì? +**A:** Các mẫu quá rộng (ví dụ, `.*`) có thể gây suy giảm hiệu năng, và các biểu thức sai định dạng có thể không trả về kết quả. Luôn thử nghiệm các mẫu trên một tập mẫu trước. -**Q1: What is the difference between text-based and object-basedbased queries are simpler but less flexible, while object‑ documents?** -A2: Yes, it supports PDFs, Word files, Excel sheets, and many other formats. +**Q:** Tôi có thể tìm các hướng dẫn nâng cao về GroupDocs.Search ở đâu? +**A:** Truy cập [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) để xem các hướng dẫn chi tiết, tài liệu API và dự án mẫu. -**Q3: How do I update an existing search index?** -A3: Use the `index.add` method with the new or modified documents to refresh the index. +--- -**Q4: WhatDocs.Search?** -A4: Typical problems include malformed regex patterns that return no results and performance drops on very large indexes. Verify your patterns and keep the index optimized. +**Cập nhật lần cuối:** 2026-07-31 +**Được kiểm tra với:** GroupDocs.Search 25.4 +**Tác giả:** GroupDocs -**Q5: Where can I find more advanced tutorials on GroupDocs.Search?** -A5: Visit the [GroupDocs Documentation](https://docs.groupdocs.com/search/java/) for detailed guides and examples. +```java +SearchQuery query2 = SearchQuery.createRegexQuery("^(.)\\1{1,}"); +``` ---- +```java +SearchResult result2 = index.search(query2); +system.out.println("Occurrences found using object form: " + result2.getDocumentCount()); +``` + +## Hướng dẫn liên quan -**Last Updated:** 2026-02-01 -**Tested With:** GroupDocs.Search 25.4 -**Author:** GroupDocs \ No newline at end of file +- [Thành thạo GroupDocs.Search Java: Tìm kiếm tài liệu hiệu quả và quản lý chỉ mục](/search/java/searching/groupdocs-search-java-efficient-document-search/) +- [Thành thạo GroupDocs.Search Java: Hướng dẫn tìm kiếm mờ & lập chỉ mục tài liệu](/search/java/searching/groupdocs-search-java-fuzzy-document-indexing/) +- [Cách lập chỉ mục văn bản trong Java với GroupDocs.Search Guide](/search/java/indexing/master-text-indexing-java-groupdocs-search-guide/) \ No newline at end of file diff --git a/content/vietnamese/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md b/content/vietnamese/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md new file mode 100644 index 000000000..3338063de --- /dev/null +++ b/content/vietnamese/java/searching/master-case-insensitive-search-java-groupdocs-search/_index.md @@ -0,0 +1,280 @@ +--- +date: '2026-07-31' +description: Tìm hiểu cách thực hiện tìm kiếm không phân biệt chữ hoa chữ thường trong + Java bằng cách thêm tài liệu vào chỉ mục với GroupDocs.Search, sử dụng việc thay + thế ký tự để chuẩn hoá văn bản trong quá trình lập chỉ mục. +keywords: +- case insensitive search java +- add documents to index +- character replacement indexing +lastmod: '2026-07-31' +og_description: Tìm kiếm không phân biệt chữ hoa chữ thường trong Java cho phép bạn + thêm tài liệu vào chỉ mục và truy vấn chúng mà không lo về kiểu chữ. Hướng dẫn này + cho thấy cách GroupDocs.Search chuẩn hoá văn bản trong quá trình lập chỉ mục để + đạt kết quả nhanh chóng và đáng tin cậy. +og_image_alt: 'Guide: Add documents to index for case insensitive search in Java using + GroupDocs.Search' +og_title: Tìm kiếm Không phân biệt Chữ hoa Chữ thường Java – Lập chỉ mục Tài liệu + với GroupDocs +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + headline: Add Documents to Index for Case‑Insensitive Search in Java + type: TechArticle +- description: Learn how to implement case insensitive search java by adding documents + to an index with GroupDocs.Search, using character replacement to normalize text + during indexing. + name: Add Documents to Index for Case‑Insensitive Search in Java + steps: + - name: Configure `IndexSettings` + text: '`IndexSettings` is the configuration object that controls how the index + stores and processes text. By setting `useCharacterReplacements` to **true**, + you turn on automatic lower‑casing (or any custom mapping you provide).' + - name: Define and Add Replacement Pairs + text: The replacement dictionary holds pairs such as `'A' → 'a'`, `'É' → 'e'`, + etc. Adding these pairs before indexing ensures every token is normalized. + - name: Add Documents for Indexing + text: GroupDocs.Search scans the target directory, extracts text from each supported + file type, applies the replacement map, and writes the tokens to the index storage. + - name: Execute Case‑Sensitive Searches + text: '`SearchOptions` configures query behavior, such as toggling case sensitivity, + allowing fine‑grained control over how searches are performed. `SearchOptions.setUseCaseSensitiveSearch(true)` + forces the engine to treat upper‑ and lower‑case characters as distinct during + a specific query, overriding the' + type: HowTo +- questions: + - answer: Include those characters in your replacement map, mapping them to their + ASCII equivalents or keeping them unchanged based on search requirements. + question: How do I handle special characters (e.g., “é”, “ß”) during indexing? + - answer: Yes. Build a custom replacement array that contains only the characters + for the target language before adding it to the dictionary. + question: Can I limit character replacement to a specific language? + - answer: Optimize the folder structure, remove unnecessary files, and store the + index on a high‑speed SSD. Incremental indexing also reduces load overhead. + question: What should I do if the index takes a long time to load? + - answer: No. Replacements are baked into the indexed data; you must rebuild the + index with new settings to change them. + question: Is it possible to revert the character replacements after indexing? + - answer: The official docs and API reference provide exhaustive details (see Resources + below). + question: Where can I find more detailed API documentation? + type: FAQPage +tags: +- case insensitive search +- GroupDocs.Search +- Java indexing +- document search +title: Thêm Tài liệu vào Chỉ mục để Tìm kiếm Không phân biệt chữ hoa chữ thường trong + Java +type: docs +url: /vi/java/searching/master-case-insensitive-search-java-groupdocs-search/ +weight: 1 +--- + +# Thêm Tài liệu vào Chỉ mục để Tìm kiếm Không phân biệt chữ hoa/chữ thường trong Java + +Khi bạn cần **case insensitive search java** có khả năng tìm thông tin một cách đáng tin cậy bất kể người dùng gõ như thế nào, chìa khóa là thêm tài liệu vào một chỉ mục trong khi chuẩn hoá văn bản. Trong hướng dẫn này, chúng tôi sẽ hướng dẫn cách cấu hình GroupDocs.Search cho Java sao cho mỗi tài liệu bạn lập chỉ mục sẽ tự động được chuyển thành chữ thường (hoặc được biến đổi theo cách khác) trong quá trình lập chỉ mục, đảm bảo kết quả không phân biệt chữ hoa/chữ thường mà không cần logic bổ sung ở thời điểm truy vấn. + +## Câu trả lời nhanh +- **What does “add documents to index” mean?** Điều này có nghĩa là tải các tệp nguồn vào một cấu trúc dữ liệu có thể tìm kiếm để chúng có thể được truy vấn sau này. +- **Why use character replacement?** Lý do sử dụng việc thay thế ký tự? Nó chuẩn hoá mọi ký tự — thường là chuyển thành chữ thường — để các tìm kiếm tự động bỏ qua sự khác biệt về chữ hoa/chữ thường. +- **Do I need a license?** Bạn có cần giấy phép không? Bản dùng thử miễn phí đủ cho phát triển; giấy phép đầy đủ cần thiết cho triển khai sản xuất. +- **Which Java version is required?** Phiên bản Java nào được yêu cầu? Java 8 hoặc mới hơn; thư viện nhắm tới Java 11+ để đạt hiệu suất tối ưu. +- **Can I switch to case‑sensitive search when needed?** Tôi có thể chuyển sang tìm kiếm phân biệt chữ hoa/chữ thường khi cần không? Có — các tùy chọn tìm kiếm cho phép bạn bật/tắt phân biệt chữ hoa/chữ thường cho từng truy vấn. + +## “add documents to index” là gì trong GroupDocs.Search? +Tải các tệp nguồn của bạn (PDF, DOCX, TXT, v.v.) vào một chỉ mục có thể tìm kiếm để công cụ có thể truy xuất chúng nhanh chóng. Thêm tài liệu vào chỉ mục sẽ phân tích mỗi tệp, trích xuất văn bản thuần và lưu trữ nó trong một cấu trúc dữ liệu được tối ưu hoá, cho phép tra cứu nhanh. + +## Tại sao bật việc thay thế ký tự trong quá trình lập chỉ mục? +Việc thay thế ký tự chuyển đổi mỗi ký tự thành một tương đương đã được định sẵn — thường là chữ thường — trong khi chỉ mục được xây dựng. Điều này đảm bảo rằng các biến thể về viết hoa, dấu phụ, hoặc ký hiệu đặc thù theo vùng không ảnh hưởng đến kết quả tìm kiếm. Bằng cách chuẩn hoá văn bản tại thời điểm lập chỉ mục, công cụ có thể khớp các truy vấn với một tập token nhất quán, cung cấp hành vi không phân biệt chữ hoa/chữ thường nhanh chóng và đáng tin cậy mà không cần xử lý bổ sung cho mỗi lần tìm kiếm. + +## Yêu cầu trước +- **GroupDocs.Search for Java** version 25.4 hoặc mới hơn (thư viện hỗ trợ hơn 30 định dạng tệp và có thể lập chỉ mục các tài liệu hàng trăm trang mà không cần tải toàn bộ tệp vào bộ nhớ). +- **Java Development Kit (JDK)** 8 hoặc mới hơn đã được cài đặt. +- Kiến thức cơ bản về **Maven** (hoặc khả năng thêm JAR thủ công). + +## Cài đặt GroupDocs.Search cho Java + +### Cài đặt Maven +Add the GroupDocs repository and dependency to your `pom.xml`: + +```xml + + + repository.groupdocs.com + GroupDocs Repository + https://releases.groupdocs.com/search/java/ + + + + + + com.groupdocs + groupdocs-search + 25.4 + + +``` + +### Tải trực tiếp +Nếu bạn không muốn sử dụng Maven, tải JAR mới nhất từ trang chính thức: [GroupDocs.Search for Java releases](https://releases.groupdocs.com/search/java/). + +### Nhận giấy phép +- **Free Trial** – tải giấy phép dùng thử để bắt đầu thử nghiệm. +- **Temporary License** – yêu cầu giấy phép thử nghiệm mở rộng từ cổng thông tin GroupDocs. +- **Full License** – mua giấy phép sản xuất khi bạn đã sẵn sàng triển khai. + +### Khởi tạo cơ bản (Tạo chỉ mục) +The following snippet creates an index folder and enables character replacements: + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); +Index index = new Index(indexFolder, settings); +``` + +## Hướng dẫn triển khai + +### Bật Thay thế Ký tự trong Cài đặt Chỉ mục +Kích hoạt tính năng này cho phép công cụ thay thế ký tự trong quá trình lập chỉ mục, đây là bước cốt lõi để đạt hành vi không phân biệt chữ hoa/chữ thường. + +#### Bước 1: Cấu hình `IndexSettings` +`IndexSettings` là đối tượng cấu hình điều khiển cách chỉ mục lưu trữ và xử lý văn bản. Bằng cách đặt `useCharacterReplacements` thành **true**, bạn bật việc tự động chuyển thành chữ thường (hoặc bất kỳ ánh xạ tùy chỉnh nào bạn cung cấp). + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.IndexSettings; + +String indexFolder = "YOUR_OUTPUT_DIRECTORY/AdvancedUsage/Indexing/CharacterReplacementDuringIndexing"; + +// Create an instance of IndexSettings and enable character replacement. +IndexSettings settings = new IndexSettings(); +settings.setUseCharacterReplacements(true); + +// Initialize the index with these settings. +Index index = new Index(indexFolder, settings); +``` + +### Cấu hình Thay thế Ký tự +Ánh xạ mỗi ký tự tới phiên bản chữ thường tương ứng (hoặc bất kỳ ánh xạ tùy chỉnh nào bạn cần). + +#### Bước 2: Định nghĩa và Thêm Các Cặp Thay thế +Từ điển thay thế chứa các cặp như `'A' → 'a'`, `'É' → 'e'`, v.v. Thêm các cặp này trước khi lập chỉ mục đảm bảo mọi token được chuẩn hoá. + +```java +import com.groupdocs.search.dictionaries.CharacterReplacementPair; + +// Access existing replacements and clear them. +index.getDictionaries().getCharacterReplacements().clear(); + +// Create an array for new replacements. +CharacterReplacementPair[] characterReplacements = new CharacterReplacementPair[Character.MAX_VALUE + 1]; +for (int i = 0; i < characterReplacements.length; i++) { + char originalChar = (char) i; + char replacementChar = Character.toLowerCase(originalChar); + characterReplacements[i] = new CharacterReplacementPair(originalChar, replacementChar); +} + +// Add these replacements to the index's dictionary. +index.getDictionaries().getCharacterReplacements().addRange(characterReplacements); +``` + +### Lập chỉ mục Tài liệu +Bây giờ chỉ mục đã sẵn sàng, bạn có thể **add documents to index** từ bất kỳ thư mục nào. + +#### Bước 3: Thêm Tài liệu để Lập chỉ mục +GroupDocs.Search sẽ quét thư mục mục tiêu, trích xuất văn bản từ mỗi loại tệp được hỗ trợ, áp dụng bản đồ thay thế và ghi các token vào bộ lưu trữ chỉ mục. + +```java +import com.groupdocs.search.Index; + +String documentFolder = "YOUR_DOCUMENT_DIRECTORY"; + +// Initialize the index and add documents. +Index index = new Index(indexFolder, settings); +index.add(documentFolder); +``` + +### Thực hiện Tìm kiếm Phân biệt chữ hoa/chữ thường (Tùy chọn) + +#### Bước 4: Thực hiện Tìm kiếm Phân biệt chữ hoa/chữ thường +`SearchOptions` cấu hình hành vi truy vấn, chẳng hạn như bật/tắt phân biệt chữ hoa/chữ thường, cho phép kiểm soát chi tiết cách thực hiện tìm kiếm. +`SearchOptions.setUseCaseSensitiveSearch(true)` buộc công cụ coi ký tự hoa và thường là khác nhau trong một truy vấn cụ thể, ghi đè hành vi mặc định không phân biệt chữ hoa/chữ thường. + +```java +import com.groupdocs.search.Index; +import com.groupdocs.search.SearchOptions; +import com.groupdocs.search.results.SearchResult; + +String query = "Promotion"; +SearchOptions options = new SearchOptions(); +options.setUseCaseSensitiveSearch(true); + +// Perform the search. +Index index = new Index(indexFolder, settings); +SearchResult result = index.search(query, options); +``` + +## Ứng dụng Thực tiễn +1. **Marketing Campaigns** – Chuẩn hoá tên sản phẩm để đội bán hàng có thể tìm tài nguyên mà không lo về chữ hoa/chữ thường. +2. **Customer Support** – Cung cấp hộp tìm kiếm cho bộ phận hỗ trợ giúp trả về bài viết đúng bất kể người dùng gõ “login” hay “Login”. +3. **E‑commerce Catalogs** – Đảm bảo khách hàng tìm thấy sản phẩm bất kể cách họ gõ tiêu đề, nâng cao tỷ lệ chuyển đổi. + +## Các yếu tố về hiệu suất +- **Organize Source Files** – Một cấu trúc thư mục gọn gàng giảm thời gian quét trong bước **add documents to index**. +- **Monitor Memory** – Lập chỉ mục khối lượng lớn có thể tiêu tốn RAM đáng kể; xử lý tệp theo lô 500 – 1 000 mục giúp kiểm soát việc sử dụng heap. +- **Asynchronous Indexing** – Khi được hỗ trợ, chạy việc lập chỉ mục trên luồng nền để giao diện người dùng phản hồi tốt và tránh chặn các thao tác của người dùng. + +## Các vấn đề thường gặp & Khắc phục + +| Symptom | Likely Cause | Fix | +|---------|--------------|-----| +| No results returned for a known term | Character replacements not enabled | Verify `settings.setUseCharacterReplacements(true)` and that the replacement map contains the needed characters. | +| Out‑of‑memory error during indexing | Indexing too many large files at once | Index in smaller batches or increase JVM heap (`-Xmx4g`). | +| Search returns case‑sensitive results unexpectedly | `SearchOptions.setUseCaseSensitiveSearch(true)` was set | Remove or set to `false` for default case‑insensitive behavior. | +| Index load time exceeds expectations | Inefficient folder layout or SSD not used | Re‑organize files, prune unused documents, and store the index on a fast SSD. | +| Special characters are ignored | Replacement map missing Unicode entries | Add mappings for characters like “é”, “ß”, “ø” to their desired equivalents. | + +## Câu hỏi thường gặp + +**Q: Làm thế nào để xử lý các ký tự đặc biệt (ví dụ: “é”, “ß”) trong quá trình lập chỉ mục?** +A: Bao gồm các ký tự đó trong bản đồ thay thế của bạn, ánh xạ chúng tới các tương đương ASCII hoặc giữ nguyên tùy theo yêu cầu tìm kiếm. + +**Q: Tôi có thể giới hạn việc thay thế ký tự cho một ngôn ngữ cụ thể không?** +A: Có. Xây dựng một mảng thay thế tùy chỉnh chỉ chứa các ký tự cho ngôn ngữ mục tiêu trước khi thêm vào từ điển. + +**Q: Tôi nên làm gì nếu việc tải chỉ mục mất nhiều thời gian?** +A: Tối ưu hóa cấu trúc thư mục, loại bỏ các tệp không cần thiết và lưu chỉ mục trên SSD tốc độ cao. Lập chỉ mục tăng dần cũng giảm tải thời gian tải. + +**Q: Có thể hoàn tác việc thay thế ký tự sau khi lập chỉ mục không?** +A: Không. Các thay thế đã được nhúng vào dữ liệu đã lập chỉ mục; bạn phải xây dựng lại chỉ mục với cài đặt mới để thay đổi chúng. + +**Q: Tôi có thể tìm tài liệu API chi tiết hơn ở đâu?** +A: Tài liệu chính thức và tham chiếu API cung cấp chi tiết đầy đủ (xem phần Tài nguyên bên dưới). + +## Tài nguyên +- [Documentation](https://docs.groupdocs.com/search/java/) +- [API Reference](https://reference.groupdocs.com/search/java) +- [Download GroupDocs.Search](https://releases.groupdocs.com/search/java/) +- [GitHub Repository](https://github.com/groupdocs-search/GroupDocs.Search-for-Java) +- [Free Support Forum](https://forum.groupdocs.com/c/search/10) +- [Temporary License Information](https://purchase.groupdocs.com/temporary-license/) + +--- + +**Cập nhật lần cuối:** 2026-07-31 +**Kiểm tra với:** GroupDocs.Search 25.4 for Java +**Tác giả:** GroupDocs + +## Hướng dẫn liên quan + +- [Thay thế ký tự trong GroupDocs.Search Java: Hướng dẫn toàn diện để cải thiện tìm kiếm văn bản và lập chỉ mục](/search/java/text-extraction-processing/groupdocs-search-java-character-replacement-guide/) +- [Thêm tài liệu vào chỉ mục: tìm kiếm Java phân biệt chữ hoa/chữ thường với GroupDocs](/search/java/searching/master-case-sensitive-searches-java-groupdocs/) +- [Cách Thêm Tài liệu vào Chỉ mục với GroupDocs.Search cho Java](/search/java/indexing/implement-document-indexing-groupdocs-search-java/) \ No newline at end of file diff --git a/content/vietnamese/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md b/content/vietnamese/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md new file mode 100644 index 000000000..952945671 --- /dev/null +++ b/content/vietnamese/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/_index.md @@ -0,0 +1,307 @@ +--- +date: '2026-07-31' +description: Tìm hiểu cách tạo hệ thống ghi log .NET mạnh mẽ bằng cách sử dụng GroupDocs, + triển khai một console logger tùy chỉnh và tận dụng FileLogger tích hợp sẵn để giám + sát hiệu quả. +keywords: +- create robust .net logging +- groupdocs logging +- custom console logger +- .net file logger +lastmod: '2026-07-31' +og_description: Tìm hiểu cách tạo hệ thống ghi log .NET mạnh mẽ bằng cách sử dụng + GroupDocs, triển khai một console logger tùy chỉnh và tận dụng FileLogger tích hợp + sẵn để giám sát hiệu quả. +og_image_alt: Guide showing how to create robust .NET logging with GroupDocs custom + console logger +og_title: Tạo hệ thống ghi log .NET mạnh mẽ với GroupDocs Console Logger +schemas: +- author: GroupDocs + dateModified: '2026-07-31' + description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + headline: Create Robust .NET Logging with GroupDocs Console Logger + type: TechArticle +- description: Learn how to create robust .NET logging using GroupDocs by implementing + a custom console logger and leveraging the built‑in FileLogger for effective monitoring. + name: Create Robust .NET Logging with GroupDocs Console Logger + steps: + - name: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + text: '**Application Monitoring:** Use `ConsoleLogger` during development to see + live diagnostics.' + - name: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + text: '**Audit Trails:** Deploy `FileLogger` to maintain compliance‑grade logs + for regulatory reporting.' + - name: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + text: '**Debugging:** Leverage detailed trace messages to pinpoint issues in complex + search pipelines.' + - name: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + text: '**Performance Analysis:** Examine log timestamps to identify bottlenecks + and optimize resource usage.' + type: HowTo +- questions: + - answer: Yes—both `ConsoleLogger` and `FileLogger` are thread‑safe, so you can + log from parallel tasks without race conditions. + question: Can I use the custom console logger in a multi‑threaded application? + - answer: A single GroupDocs license covers all modules, including Search and Redaction, + simplifying procurement. + question: Do I need a separate license for GroupDocs.Search and GroupDocs.Redaction? + - answer: Set the `LogFilePath` property when constructing the `FileLogger` instance, + e.g., `new FileLogger("C:\\Logs\\app.log")`. + question: How do I change the log file location for FileLogger? + - answer: The library provides `Debug`, `Info`, `Warning`, `Error`, and `Critical` + levels, allowing fine‑grained control over output. + question: What log levels does GroupDocs support? + - answer: Absolutely—create a composite logger that forwards messages to both `ConsoleLogger` + and `FileLogger` for dual visibility. + question: Is it possible to combine both console and file logging simultaneously? + type: FAQPage +tags: +- logging +- groupdocs +- .net +- custom logger +- console logger +title: Tạo hệ thống ghi log .NET mạnh mẽ với GroupDocs Console Logger +type: docs +url: /vi/net/exception-handling-logging/mastering-logging-dotnet-groupdocs-custom-console-logger-guide/ +weight: 1 +--- + +# Tạo hệ thống ghi log .NET mạnh mẽ với GroupDocs Console Logger + +## Giới thiệu + +Bạn có đang gặp khó khăn trong việc theo dõi lỗi và các hoạt động trace trong các ứng dụng .NET của mình không? **Create robust .NET logging** là điều thiết yếu để giám sát hiệu năng, gỡ lỗi và duy trì hoạt động trơn tru. Hướng dẫn này sẽ chỉ cho bạn cách xây dựng một logger console tùy chỉnh bằng GroupDocs.Search đồng thời giới thiệu cách tích hợp GroupDocs.Redaction cho .NET. Khi hoàn thành, bạn sẽ có một giải pháp ghi log trong suốt, dễ bảo trì và phù hợp ngay với codebase hiện tại của bạn. + +## Câu trả lời nhanh +- **Logger tùy chỉnh làm gì?** Ghi các mục log trực tiếp vào console để nhận phản hồi ngay lập tức trong quá trình phát triển. +- **Component nào của GroupDocs cung cấp ghi log vào file?** Lớp `FileLogger` tích hợp xử lý các file log bền vững. +- **Tôi có cần giấy phép không?** Giấy phép tạm thời hoạt động cho việc thử nghiệm; giấy phép đầy đủ cần thiết cho môi trường production. +- **Các phiên bản .NET nào được hỗ trợ?** .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7. +- **Giải pháp có an toàn đa luồng không?** Có—cả `ConsoleLogger` và `FileLogger` đều được thiết kế để sử dụng đồng thời. + +## “Create robust .NET logging” là gì? +**Create robust .NET logging** có nghĩa là thiết lập một pipeline ghi log đáng tin cậy, hiệu suất cao, ghi lại lỗi, cảnh báo và thông báo thông tin trên mọi lớp của ứng dụng. Với GroupDocs, bạn có thể đạt được điều này bằng cách sử dụng cả mục tiêu console và file đồng thời giữ cấu hình đơn giản. + +## Tại sao nên sử dụng GroupDocs cho việc ghi log .NET? +GroupDocs hỗ trợ **hơn 30 nền tảng .NET** và có thể xử lý tài liệu lên tới **2 GB** mà không gây ảnh hưởng đáng kể đến hiệu năng. Các API ghi log của nó nhẹ, an toàn đa luồng và tích hợp liền mạch với các mẫu xử lý ngoại lệ hiện có, mang lại cho bạn một giải pháp đã được chứng minh, cấp doanh nghiệp. + +## Yêu cầu trước + +- **Thư viện và phiên bản yêu cầu:** GroupDocs.Search cho .NET và GroupDocs.Redaction cho .NET (phiên bản mới nhất tương thích). +- **Cài đặt môi trường:** Visual Studio 2022 hoặc bất kỳ IDE nào tương thích .NET. +- **Kiến thức yêu cầu:** Quen thuộc với cú pháp C# và các khái niệm cơ bản về ghi log. + +## Cài đặt GroupDocs.Redaction cho .NET + +Đầu tiên, thêm GroupDocs.Redaction vào dự án của bạn. Chọn phương pháp phù hợp nhất với quy trình làm việc của bạn. + +**.NET CLI** +```bash +dotnet add package GroupDocs.Redaction +``` + +**Package Manager** +```powershell +Install-Package GroupDocs.Redaction +``` + +**NuGet Package Manager UI** +Tìm kiếm “GroupDocs.Redaction” và cài đặt phiên bản mới nhất. + +### Cấp phép + +Để bắt đầu, bạn có thể nhận giấy phép tạm thời hoặc mua giấy phép đầy đủ. Điều này sẽ cho phép bạn khám phá tất cả các tính năng mà không bị giới hạn. Truy cập [GroupDocs' official site](https://purchase.groupdocs.com/temporary-license/) để biết thêm chi tiết về việc nhận giấy phép. + +### Khởi tạo và Cài đặt Cơ bản + +Lớp `Redactor` cung cấp các API để chỉnh sửa và xóa nội dung trong các tài liệu được hỗ trợ. +```csharp +using GroupDocs.Redaction; + +// Initialize Redactor with a file path or stream +Redactor redactor = new Redactor("path/to/your/document.pdf"); +``` + +## Hướng dẫn triển khai + +### Cách triển khai logger console tùy chỉnh với GroupDocs? + +Tải logger tùy chỉnh của bạn bằng cách tạo một thể hiện của `ConsoleLogger` và truyền nó vào `SearchOptions` hoặc bất kỳ thành phần GroupDocs nào chấp nhận `ILogger`. Logger sẽ ghi mỗi thông điệp vào `Console.WriteLine`, cung cấp cho bạn khả năng quan sát thời gian thực về những gì thư viện đang thực hiện, và giúp bạn nhanh chóng phát hiện vấn đề trong quá trình phát triển. + +Lớp `ConsoleLogger` triển khai `ILogger` để ghi các thông điệp log trực tiếp vào console. +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Bước 1: Định nghĩa Logger tùy chỉnh của bạn** +Tạo một lớp mới có tên `ConsoleLogger`: +```csharp +using System; +using GroupDocs.Search.Common; + +public class ConsoleLogger : ILogger +{ + public ConsoleLogger() + { + } + + // Logs an error message using the console. + public void Error(string message) + { + Console.WriteLine("Error: " + message); + } + + // Logs a trace message using the console. + public void Trace(string message) + { + Console.WriteLine(message); + } +} +``` + +**Bước 2: Tích hợp với GroupDocs.Search** + +`SearchOptions` cấu hình hành vi tìm kiếm và chấp nhận một `ILogger` để ghi log. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void ImplementingCustomLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/ImplementingCustomLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new ConsoleLogger(); // Set your custom logger + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### FileLogger là gì và khi nào nên sử dụng? + +Lớp `FileLogger` triển khai `ILogger` và lưu các mục log vào một file trên đĩa, rất phù hợp cho môi trường production nơi cần có dấu vết kiểm toán. Lớp `FileLogger` do GroupDocs cung cấp ghi các mục log vào file được chỉ định trên đĩa, phù hợp cho môi trường production khi bạn cần dấu vết kiểm toán bền vững. Bạn có thể cấu hình việc quay vòng log, giới hạn kích thước file và mức độ log để đáp ứng yêu cầu vận hành. + +Lớp `FileLogger` triển khai `ILogger` và lưu các mục log vào một file trên đĩa. +```csharp +using System; +using GroupDocs.Search.Common; +using GroupDocs.Search.Results; + +public static void UseOfStandardFileLogger() +{ + string indexFolder = "YOUR_DOCUMENT_DIRECTORY/Logging/UseOfStandardFileLogger"; + string documentsFolder = "YOUR_DOCUMENT_DIRECTORY/DocumentsPath"; + string query = "Lorem"; + string logPath = "YOUR_OUTPUT_DIRECTORY/Logging/Log.txt"; + + IndexSettings settings = new IndexSettings(); + settings.Logger = new FileLogger(logPath, 4.0); // Log file path and max size + + Index index = new Index(indexFolder, settings); + index.Add(documentsFolder); + + SearchResult result = index.Search(query); +} +``` + +### Tại sao chọn GroupDocs cho việc ghi log .NET? + +GroupDocs mang lại lợi thế **định lượng**: nó hỗ trợ **hơn 50 định dạng đầu ra** và có thể xử lý **tài liệu hàng trăm trang** mà không cần tải toàn bộ file vào bộ nhớ. Cơ sở hạ tầng ghi log của nó chỉ thêm ít hơn **2 ms** overhead cho mỗi mục log, đảm bảo hiệu năng vẫn tối ưu ngay cả khi tải nặng. + +## Ứng dụng thực tiễn + +Dưới đây là một số kịch bản thực tiễn nơi các kỹ thuật ghi log này tỏa sáng: + +1. **Giám sát ứng dụng:** Sử dụng `ConsoleLogger` trong quá trình phát triển để xem chẩn đoán trực tiếp. +2. **Dấu vết kiểm toán:** Triển khai `FileLogger` để duy trì log cấp độ tuân thủ cho báo cáo quy định. +3. **Gỡ lỗi:** Tận dụng các thông điệp trace chi tiết để xác định vấn đề trong pipeline tìm kiếm phức tạp. +4. **Phân tích hiệu năng:** Kiểm tra dấu thời gian log để xác định nút thắt và tối ưu việc sử dụng tài nguyên. + +## Xem xét về hiệu năng + +Để giữ cho việc ghi log nhanh và hiệu quả: + +- **Giới hạn mức độ chi tiết log:** Đặt mức độ của logger thành `Info` hoặc `Warning` trong production để tránh I/O quá mức. +- **Sử dụng tài nguyên hiệu quả:** Cấu hình `FileLogger` với kích thước file tối đa 10 MB và bật tự động quay vòng. +- **Quản lý bộ nhớ:** Giải phóng các thể hiện logger bằng khối `using` hoặc gọi `Dispose()` một cách rõ ràng để giải phóng tài nguyên kịp thời. + +## Câu hỏi thường gặp + +**Q: Tôi có thể sử dụng logger console tùy chỉnh trong ứng dụng đa luồng không?** +A: Có—cả `ConsoleLogger` và `FileLogger` đều an toàn đa luồng, vì vậy bạn có thể ghi log từ các tác vụ song song mà không gặp điều kiện tranh chấp. + +**Q: Tôi có cần giấy phép riêng cho GroupDocs.Search và GroupDocs.Redaction không?** +A: Một giấy phép GroupDocs duy nhất bao phủ tất cả các mô-đun, bao gồm Search và Redaction, giúp đơn giản hoá việc mua sắm. + +**Q: Làm sao để thay đổi vị trí file log cho FileLogger?** +A: Đặt thuộc tính `LogFilePath` khi khởi tạo thể hiện `FileLogger`, ví dụ `new FileLogger("C:\\Logs\\app.log")`. + +**Q: GroupDocs hỗ trợ những mức độ log nào?** +A: Thư viện cung cấp các mức `Debug`, `Info`, `Warning`, `Error` và `Critical`, cho phép kiểm soát chi tiết đầu ra. + +**Q: Có thể kết hợp cả console và file logging đồng thời không?** +A: Chắc chắn—tạo một logger tổng hợp để chuyển tiếp thông điệp tới cả `ConsoleLogger` và `FileLogger` nhằm có khả năng quan sát kép. + +## Tài nguyên + +- [Tài liệu GroupDocs Redaction](https://docs.groupdocs.com/search/net/) +- [Tham chiếu API](https://reference.groupdocs.com/redaction/net) +- [Tải xuống Thư viện GroupDocs](https://releases.groupdocs.com/search/net/) +- [Diễn đàn hỗ trợ miễn phí](https://forum.groupdocs.com/c/search/10) +- [Nhận giấy phép tạm thời](https://purchase.groupdocs.com/temporary-license/) + +## Kết luận + +Trong hướng dẫn này, chúng tôi đã chỉ cách **create robust .NET logging** bằng cách xây dựng một logger console tùy chỉnh và tận dụng `FileLogger` tích hợp của GroupDocs. Những công cụ này cung cấp cho bạn cái nhìn thời gian thực trong quá trình phát triển và các log bền vững, đáng tin cậy cho production. Khám phá các cấu hình mức độ log khác nhau, thử nghiệm logger tổng hợp, và tích hợp giải pháp vào các dịch vụ lớn hơn để đạt được khả năng quan sát toàn stack. + +**Bước tiếp theo** + +- Kiểm tra các cài đặt mức độ log khác nhau để tìm điểm cân bằng giữa chi tiết và hiệu năng. +- Thêm logging có cấu trúc (đầu ra JSON) vào `FileLogger` để dễ dàng nhập vào các nền tảng phân tích log. +- Khám phá các mô-đun khác của GroupDocs, như Search và Annotation, để mở rộng pipeline xử lý tài liệu của bạn. + +--- + +**Last Updated:** 2026-07-31 +**Tested With:** GroupDocs.Search 23.11, GroupDocs.Redaction 23.11 for .NET +**Author:** GroupDocs + +--- + +## Hướng dẫn liên quan + +- [Hướng dẫn Xử lý Ngoại lệ và Ghi log cho GroupDocs.Search .NET](/search/net/exception-handling-logging/) +- [Triển khai GroupDocs.Search và Redaction trong .NET cho Quản lý Tài liệu](/search/net/document-management/groupdocs-search-redaction-net-guide/) +- [Thành thạo GroupDocs Search và Redaction trong .NET: Quản lý Tài liệu Nâng cao](/search/net/advanced-features/groupdocs-search-redaction-net-tutorial/) \ No newline at end of file