Extract Text from MS Word Documents in C#

اگر شما در حال توسعه برنامه های C# است که با این اسناد تعامل، شما ممکن است خود را نیاز به استخراج متن از آنها. این می تواند برای مقاصد مانند تجزیه و تحلیل متن و یا کشیدن بخش های خاص از یک سند برای جمع آوری به یک جدید است. در این پست وبلاگ، ما در روش های برای برداشتن متون از مستندات Word در C # غوطه ور.

جدول محتوا

C# کتابخانه برای استخراج متن

Aspose.Words برای .NET این یک کتابخانه قدرتمند و کاربر پسند است که برای کار با اسناد Word طراحی شده است. این مجموعه ای جامع از ویژگی ها را فراهم می کند، از جمله استخراج متن، ایجاد اسنادار، دستکاری و تبدیل. با Aspose.Words برای .NET، توسعه دهندگان می توانند به طور موثر جنبه های مختلف اسرار Word را مدیریت کنند و آن را به عنوان یک ابزار ارزشمند برای نیازهای توسعه شما تبدیل کنند.

برای شروع، دانلود کتابخانه یا آن را به طور مستقیم از NuGet با استفاده از دستورالعمل زیر در کنسول مدیریت بسته:

PM> Install-Package Aspose.Words

درک استخراج متن در اسناد کلمه

یک سند MS Word شامل عناصر مختلف مانند پاراگراف ها، جدول ها و تصاویر است.بنابراین، الزامات برای استخراج متن ممکن است با توجه به مورد استفاده خاص متفاوت باشد.شما ممکن است نیاز به استخراج متن بین پاراگراف ها، برچسب ها، نظرات و بیشتر.

هر عنصر در یک سند Word به عنوان یک گره نشان داده می شود.بنابراین، برای پردازش موثر یک سند، شما باید با این گره ها کار کنید.بیایید بررسی کنیم که چگونه متن را از اسناد Word در سناریوهای مختلف استخراج کنیم.

راهنمای گام به گام برای استخراج متن از یک سند Word

در این بخش، ما یک استخراج کننده متن C# برای اسناد Word را اجرا خواهیم کرد. جریان کار برای استخراج متن شامل مراحل زیر خواهد بود:

  • تعیین گره هایی که باید در فرآیند استخراج قرار بگیرند.
  • محتوا را بین گره های مشخص شده (از جمله یا حذف گره های شروع و پایان) استخراج کنید.
  • از گره های استخراج شده کلون شده برای ایجاد یک سند جدید Word با محتوای استخراج شده استفاده کنید.

بیایید یک روش به نام ExtractContent ایجاد کنیم که گره ها و پارامترهای دیگر را برای انجام استخراج متن می پذیرد.این روش اسناد را از بین می برد و گره ها را بر اساس پارامترهای زیر کلون می کند:

  • StartNode و EndNode: اینها نقطه شروع و پایان برای استخراج محتوا را تعریف می کنند.اینها می توانند سطح بلوک (به عنوان مثال، پاراگراف، جدول) یا گره های سطح خطی (به عنوان مثال، Run، FieldStart، BookmarkStart) باشند.- برای میدان ها، گزینه مربوطه FieldStart را وارد کنید.

  • برای یادداشت های کتاب، از گره های BookmarkStart و BookmarkEnd استفاده کنید.

  • برای نظرات، از گره های CommentRangeStart و CommentRangeEnd استفاده کنید.

  • IsInclusive: این پارامتر تعیین می کند که آیا برچسب ها در استخراج شامل می شوند یا خیر.در صورت تنظیم به جعلی و همان یا گره های متوالی ارائه می شود، یک لیست خالی بازگردانده می شود.

در اینجا پیاده سازی کامل روش ExtractContent برای استخراج محتوا بین گره های مشخص شده است:

علاوه بر این، برخی از روش های کمک کننده توسط روش ExtractContent برای تسهیل عملیات استخراج متن مورد نیاز است:

اکنون که ما روش های خود را آماده کرده ایم، می توانیم به استخراج متن از یک سند Word ادامه دهیم.

استخراج متن بین پاراگراف های یک سند کلمه {# استخراج متن بین پاراگراف ها}

برای استخراج محتوا بین دو پاراگراف در یک سند Word DOCX، این مراحل را دنبال کنید:

  • اسناد کلمه را با استفاده از کلاس اسناد بارگذاری کنید.
  • ارجاع به پاراگراف های شروع و پایان را با استفاده از روش Document.FirstSection.Body.GetChild(NodeType.PARAGRAPH، int، boolean) دریافت کنید.
  • روش ExtractContent(startPara، endPara، True) را برای استخراج گره ها به یک شی استفاده کنید.
  • از روش یارانه GenerateDocument(Document، extractedNodes) برای ایجاد یک سند با محتوای استخراج شده استفاده کنید.
  • اسناد جدید را با استفاده از روش Document.Save(string) ذخیره کنید.

در اینجا یک نمونه کد نشان می دهد که چگونه برای استخراج متن بین پاراگراف های 7 و 11 در یک سند Word:

استخراج متن بین انواع مختلف نودها

شما همچنین می توانید محتوا را بین انواع مختلفی از گره ها استخراج کنید.به عنوان مثال، اجازه دهید محتوا را بین یک پاراگراف و یک جدول استخراج کنید و آن را در یک سند جدید Word ذخیره کنید.

  • اسناد کلمه را با استفاده از کلاس اسناد بارگذاری کنید.
  • ارجاع به گره های شروع و پایان را با استفاده از روش Document.FirstSection.Body.GetChild(NodeType، int، boolean) دریافت کنید.
  • تماس با ExtractContent(startPara، endPara، True) برای استخراج گره ها به یک شی.
  • از روش یارانه GenerateDocument(Document، extractedNodes) برای ایجاد یک سند با محتوای استخراج شده استفاده کنید.
  • اسناد جدید را با استفاده از Document.Save(string) ذخیره کنید.

در اینجا نمونه کد برای استخراج متن بین یک پاراگراف و یک جدول در C# است:

استخراج متن بر اساس سبک ها {# استخراج متن بین پاراگراف ها بر اساس سبک ها}

برای استخراج محتوا بین پاراگراف ها بر اساس سبک ها، این مراحل را دنبال کنید.برای این نمایش، ما محتوا را بین اولین “قسمت 1” و اولین “قسمت 3” در سند Word استخراج خواهیم کرد:

  • اسناد کلمه را با استفاده از کلاس اسناد بارگذاری کنید.
  • پاراگراف ها را به یک شی با استفاده از روش کمک ParagraphsByStyleName(Document، “Heading 1”) استخراج کنید.
  • پاراگراف ها را به یک شی دیگر با استفاده از ParagraphsByStyleName(Document، “Heading”> استخراج کنید.
  • تماس با ExtractContent(startPara، endPara، True) با عناصر اولیه از هر دو پاراگراف.
  • از روش یارانه GenerateDocument(Document، extractedNodes) برای ایجاد یک سند با محتوای استخراج شده استفاده کنید.
  • اسناد جدید را با استفاده از Document.Save(string) ذخیره کنید.

در اینجا یک نمونه کد برای استخراج محتوا بین پاراگراف ها بر اساس سبک ها وجود دارد:

بیشتر بخوانید درباره استخراج متن

بررسی سناریوهای اضافی برای استخراج متن از اسناد Word از طریق این مقاله مستندات.

یک کتابخانه استخراج متن کلمه رایگان دریافت کنید

شما می توانید یک مجوز موقت رایگان برای استخراج متن بدون محدودیت های ارزیابی

نتیجه گیری

Aspose.Words برای .NET یک کتابخانه متنوع است که فرآیند استخراج متن از اسناد Word را در C# ساده می کند. با ویژگی های گسترده و API دوستانه کاربر، شما می توانید به طور موثر با اسناد Word کار کنید و سناریوهای استخراج متن مختلف را اتوماتیک کنید. آیا شما در حال توسعه برنامه هایی هستید که نیاز به پردازش اسناد Word دارند یا به سادگی استخراج متن دارند، Aspose.Words برای .NET یک ابزار ضروری برای توسعه دهندگان است.

برای یافتن ویژگی های بیشتر Aspose.Words برای .NET، بررسی کنید مستندات. اگر سوالی دارید، آزاد باشید که از طریق ما به آن دسترسی داشته باشید. انجمن.

همچنین ببینید

نکته: ممکن است بخواهید Aspose را بررسی کنید. PowerPoint به کلمه تبدیل، که نشان دهنده فرآیند محبوب تبدیل ارائه ها به اسناد Word است.

More in this category