Extract Text from MS Word Documents in C#

เอกสาร Microsoft Word เป็นขั้นตอนในการสร้างและแบ่งปันเนื้อหาข้อความ หากคุณกําลังพัฒนาแอพ C# ที่โต้ตอบกับเอกลักษณ์เหล่านี้คุณอาจพบว่าคุณต้องสกัดข้อความจากพวกเขา นี่อาจเป็นสําหรับวัตถุประสงค์เช่นการวิเคราะห์ข้อความหรือการสกปรกส่วนที่เฉพาะเจาะจงของเอกชนเพื่อรวบรวมเป็นหนึ่งใหม่ ในโพสต์ในบล็อกนี้เราจะหลุดไปในวิธีการที่จะสแกนข้อความจากการอักษร Word ใน C #

ตารางเนื้อหา

C# Library for Text Extraction

Aspose.Words สําหรับ .NET เป็นห้องสมุดที่แข็งแกร่งและสะดวกในการใช้งานที่ออกแบบมาเพื่อทํางานกับเอกสาร Word มีคุณสมบัติที่ครอบคลุมรวมถึงการสกัดข้อความการสร้างเอกลักษณ์การจัดการและการแปลง ด้วย Aspose.Words สําหรับ .NET ผู้พัฒนาสามารถจัดการความหลากหลายของเนื้อหา Word ได้อย่างมีประสิทธิภาพทําให้มันเป็นเครื่องมือที่มีค่าสําหรับความต้องการการพัฒนาของคุณ

เพื่อเริ่มต้น ดาวน์โหลดห้องสมุด หรือติดตั้งโดยตรงจาก NuGet ใช้คําสั่งต่อไปนี้ในคอนโซลผู้จัดการแพคเกจ:

PM> Install-Package Aspose.Words

ทําความเข้าใจการ استخراجข้อความในเอกสาร Word

เอกสาร MS Word ประกอบด้วยองค์ประกอบต่าง ๆ เช่น paragraphs, tables, และ ภาพ ดังนั้นความต้องการสําหรับการสกัดข้อความอาจแตกต่างกันขึ้นอยู่กับกรณีที่ใช้เฉพาะ คุณอาจต้องสกัดข้อความระหว่าง paragraphs, bookmarks, comments, และอื่น ๆ

องค์ประกอบแต่ละรายการในเอกสาร Word จะถูกนําเสนอเป็นจุด ดังนั้นเพื่อประมวลผลเอกสารได้อย่างมีประสิทธิภาพคุณจะต้องทํางานกับจุดเหล่านี้ ลองดูวิธีการดึงข้อความจากเอกสาร Word ในสถานการณ์ที่แตกต่างกัน

คู่มือขั้นตอนในการสกัดข้อความจากเอกสาร Word {#สกัดข้อความจากเอกสาร Word}

ในส่วนนี้เราจะนําไปใช้เครื่องสกัดข้อความ C# สําหรับเอกสาร Word กระแสการทํางานสําหรับการสกัดข้อความจะรวมถึงขั้นตอนต่อไปนี้:

  • define the nodes to include in the extraction process เคล็ดลับที่จะรวมอยู่ในกระบวนการสกัด
  • extract the content between the specified nodes (รวมถึงหรือยกเลิกการเริ่มต้นและปลาย nodes)
  • ใช้คอลัมน์ที่สกัดเพื่อสร้างเอกสาร Word ใหม่ที่มีเนื้อหาที่สกัด

เราจะสร้างวิธีการที่เรียกว่า ExtractContent ซึ่งจะยอมรับคอลัมน์และพารามิเตอร์อื่น ๆ เพื่อดําเนินการการสกัดข้อความ วิธีนี้จะแบ่งเอกสารและคอลัมน์คอลัมน์ตามพารามิเตอร์ต่อไปนี้:

  • StartNode และ EndNode: พวกเขากําหนดจุดเริ่มต้นและจุดสิ้นสุดสําหรับการ استخراجเนื้อหา พวกเขาสามารถเป็นระดับบล็อก (เช่น paragraph, Table) หรือช่องระดับอินไลน์ (เช่น Run, FieldStart, BookmarkStart)- สําหรับ fields, pass the corresponding FieldStart object.

  • สําหรับหมายเลขหนังสือใช้ปุ่ม BookmarkStart และ BookmarkEnd

  • สําหรับความคิดเห็นใช้ปุ่ม CommentRangeStart และ CommentRangeEnd

  • IsInclusive: พารามิเตอร์นี้กําหนดว่าเครื่องหมายจะรวมอยู่ในการสกัด หากกําหนดค่าที่ซื่อสัตย์และ nodes เดียวหรือต่อเนื่องจะจัดให้รายการที่ว่างเปล่าจะถูกคืน

นี่คือการประมวลผลอย่างสมบูรณ์ของวิธีการ ExtractContent เพื่อสกัดเนื้อหาระหว่างช่องที่ระบุ:

นอกจากนี้วิธีการช่วยบางอย่างจะถูกกําหนดโดยวิธีการ ExtractContent เพื่อความสะดวกในการประยุกต์ใช้การประยุกต์ใช้ข้อความ:

ตอนนี้ที่เรามีวิธีการของเราพร้อมแล้วเราสามารถดําเนินการในการสกัดข้อความจากเอกสาร Word

การสกัดข้อความระหว่าง paragraphs ของเอกสาร Word {#สกัดข้อความระหว่าง paragraphs}

เพื่อ extract content between two paragraphs in a Word DOCX document, ทําตามขั้นตอนต่อไปนี้:

  • ดาวน์โหลดเอกสาร Word โดยใช้หมวดหมู่ เอกสาร
  • รับคําอธิบายถึงขั้นตอนเริ่มต้นและสิ้นสุดโดยใช้วิธีการ Document.FirstSection.Body.GetChild(NodeType.PARAGRAPH, int, boolean)
  • Call the ExtractContent(startPara, endPara, True) method to extract the nodes into an object.
  • ใช้ GenerateDocument(Document, extractedNodes) วิธีการช่วยในการสร้างเอกสารที่มีเนื้อหาที่สกัด
  • บันทึกเอกสารใหม่โดยใช้วิธีการ Document.Save(string)

นี่คือตัวอย่างรหัสที่แสดงให้เห็นว่าวิธีการสกัดข้อความระหว่าง paragraphs 7 และ 11 ในเอกสาร Word:

การสกัดข้อความระหว่างประเภทที่แตกต่างกันของปุ่ม

นอกจากนี้คุณยังสามารถ استخراجเนื้อหาระหว่างประเภทต่าง ๆ ของ nodes ตัวอย่างเช่นเราจะ استخراجเนื้อหาระหว่าง paragraph และตารางและบันทึกไว้ในเอกสาร Word ใหม่ ขั้นตอนดังต่อไปนี้:

  • ดาวน์โหลดเอกสาร Word โดยใช้หมวดหมู่ เอกสาร
  • รับการอ้างอิงถึงช่องเริ่มต้นและปลายโดยใช้วิธีการ Document.FirstSection.Body.GetChild(NodeType, int, boolean)
  • Call ExtractContent(startPara, endPara, True) to extract the nodes into an object.
  • ใช้ GenerateDocument(Document, extractedNodes) วิธีการช่วยในการสร้างเอกสารที่มีเนื้อหาที่สกัด
  • บันทึกเอกสารใหม่โดยใช้ Document.Save(string)

นี่คือตัวอย่างรหัสสําหรับการสกัดข้อความระหว่าง paragraph และตารางใน C#:

การสกัดข้อความตามรูปแบบ

เพื่อ extract content between paragraphs based on styles, follow these steps. สําหรับการแสดงผลนี้เราจะ extract content between the first “Heading 1” and the first “Heading 3” in the Word document:

  • ดาวน์โหลดเอกสาร Word โดยใช้หมวดหมู่ เอกสาร
  • extract paragraphs into an object using the ParagraphsByStyleName(Document, “หัวข้อ 1”) helper method.
  • extract paragraphs into another object using ParagraphsByStyleName(เอกสาร, “หัว 3).
  • Call ExtractContent(startPara, endPara, True) ด้วยองค์ประกอบแรกจากทั้งสอง paragraph arrays
  • ใช้ GenerateDocument(Document, extractedNodes) วิธีการช่วยในการสร้างเอกสารที่มีเนื้อหาที่สกัด
  • บันทึกเอกสารใหม่โดยใช้ Document.Save(string)

นี่คือตัวอย่างรหัสเพื่อ استخراجเนื้อหาระหว่าง paragraphs ตามรูปแบบ:

อ่านเพิ่มเติมเกี่ยวกับการสกัดข้อความ

ค้นหาสถานการณ์เพิ่มเติมสําหรับการสกัดข้อความจากเอกสาร Word ผ่าน บทความเอกสารนี้.

รับฟรี Word Text Extractor Library

คุณสามารถได้รับ A ใบอนุญาตชั่วคราวฟรี การสกัดข้อความโดยไม่มีข้อ จํากัด การประเมิน

ข้อสรุป

Aspose.Words for .NET เป็นห้องสมุดที่หลากหลายซึ่งปรับปรุงกระบวนการสกัดข้อความจากเอกสาร Word ใน C# ด้วยคุณสมบัติที่กว้างขวางและ API ที่สะดวกสําหรับผู้ใช้คุณสามารถทํางานได้อย่างมีประสิทธิภาพกับเอกสาร Word และอัตโนมัติสถานการณ์การสกัดข้อความต่างๆ ไม่ว่าคุณจะพัฒนาโปรแกรมที่ต้องการการประมวลผลเอกสาร Word หรือเพียงแค่สกัดข้อความ Aspose.Words for .NET เป็นเครื่องมือที่สําคัญสําหรับนักพัฒนา

สําหรับคุณสมบัติเพิ่มเติมของ Aspose.Words สําหรับ .NET โปรดดูที่ การรับรองหากคุณมีคําถามใด ๆ รู้สึกอิสระที่จะมาถึงผ่านทางของเรา โพสต์.

ดูเพิ่มเติม

คําแนะนํา: คุณอาจต้องการตรวจสอบ Aspose PowerPoint ไปยัง Word แปลงซึ่งแสดงให้เห็นถึงกระบวนการที่นิยมในการแปลงการนําเสนอไปยังเอกสาร Word

More in this category