ละเว้นข้อความภายในฟิลด์

ในบทความนี้ เราจะสำรวจซอร์สโค้ด C# ด้านบนเพื่อทำความเข้าใจวิธีใช้ฟังก์ชันละเว้นข้อความภายในฟิลด์ในไลบรารี Aspose.Words สำหรับ .NET คุณลักษณะนี้มีประโยชน์เมื่อเราต้องการละเว้นข้อความภายในฟิลด์เมื่อจัดการเอกสาร

ข้อกำหนดเบื้องต้น

  • ความรู้พื้นฐานของภาษา C#
  • สภาพแวดล้อมการพัฒนา .NET ที่ติดตั้งไลบรารี Aspose.Words

ขั้นตอนที่ 1: การสร้างเอกสารใหม่

ก่อนที่เราจะเริ่มจัดการข้อความภายในฟิลด์ เราจำเป็นต้องสร้างเอกสารใหม่โดยใช้ Aspose.Words สำหรับ .NET ซึ่งสามารถทำได้โดยการยกตัวอย่าง aDocument วัตถุ:

Document doc = new Document();

ขั้นตอนที่ 2: การแทรกฟิลด์ที่มีข้อความอยู่ข้างใน

เมื่อเรามีเอกสารแล้ว เราก็สามารถแทรกฟิลด์ที่มีข้อความอยู่ข้างในโดยใช้ aDocumentBuilder วัตถุ. ตัวอย่างเช่น หากต้องการแทรกฟิลด์ “INCLUDETEXT” ด้วยข้อความ “Text in field” เราสามารถใช้InsertField วิธี:

DocumentBuilder builder = new DocumentBuilder(doc);
builder.InsertField("INCLUDETEXT", "Text in field");

ขั้นตอนที่ 3: การใช้ฟังก์ชันละเว้นข้อความภายในฟิลด์

หากต้องการละเว้นข้อความภายในฟิลด์ในการดำเนินการครั้งต่อไป เราสามารถใช้ aFindReplaceOptions วัตถุและตั้งค่าIgnoreFieldsทรัพย์สินเพื่อtrue: :

FindReplaceOptions options = new FindReplaceOptions { IgnoreFields = true };

ขั้นตอนที่ 4: การใช้นิพจน์ทั่วไปสำหรับการค้นหาและแทนที่

ในการดำเนินการค้นหาและแทนที่ข้อความในเอกสารเราจะใช้นิพจน์ทั่วไป ในตัวอย่างของเรา เราจะค้นหาตัวอักษร “e” ทั้งหมดและแทนที่ด้วยเครื่องหมายดอกจัน “* " เราจะใช้ .NETRegex คลาสสำหรับสิ่งนี้:

Regex regex = new Regex("e");
doc.Range.Replace(regex, "*", options);

ขั้นตอนที่ 5: การดูผลลัพธ์เอกสารที่แก้ไข

หลังจากใช้การค้นหาและแทนที่แล้ว เราสามารถแสดงเนื้อหาที่เปลี่ยนแปลงของเอกสารได้โดยใช้GetText วิธี:

Console.WriteLine(doc.GetText());

ขั้นตอนที่ 6: การเปลี่ยนตัวเลือกเพื่อรวมฟิลด์

เรารวมข้อความไว้ในฟิลด์ในผลลัพธ์ผลลัพธ์ เราสามารถเปลี่ยนตัวเลือกเพื่อไม่ให้ละเว้นฟิลด์ได้ สำหรับสิ่งนี้เราจะตั้งค่าIgnoreFieldsทรัพย์สินเพื่อfalse: :

options.IgnoreFields = false;

ขั้นตอนที่ 7: การแสดงเอกสารที่แก้ไขพร้อมฟิลด์

หลังจากเปลี่ยนตัวเลือกแล้ว เราสามารถทำการค้นหาและแทนที่อีกครั้งเพื่อให้ได้ผลลัพธ์ที่มีข้อความอยู่ภายในฟิลด์ที่รวมไว้:

doc.Range.Replace(regex, "*", options);
Console.WriteLine(doc.GetText());

ตัวอย่างซอร์สโค้ดสำหรับการละเว้นข้อความภายในฟิลด์โดยใช้ Aspose.Words สำหรับ .NET

นี่คือตัวอย่างซอร์สโค้ดแบบเต็มเพื่อสาธิตการใช้ฟังก์ชัน Ignore Text Inside Fields กับ Aspose.Words สำหรับ .NET:

    
	Document doc = new Document();
	DocumentBuilder builder = new DocumentBuilder(doc);

	// แทรกช่องที่มีข้อความอยู่ข้างใน
	builder.InsertField("INCLUDETEXT", "Text in field");
	
	FindReplaceOptions options = new FindReplaceOptions { IgnoreFields = true };
	
	Regex regex = new Regex("e");
	doc.Range.Replace(regex, "*", options);
	
	Console.WriteLine(doc.GetText());

	options.IgnoreFields = false;
	doc.Range.Replace(regex, "*", options);
	
	Console.WriteLine(doc.GetText());
  

บทสรุป

ในบทความนี้ เราได้สำรวจซอร์สโค้ด C# เพื่อทำความเข้าใจวิธีใช้ฟังก์ชันละเว้นข้อความภายในฟิลด์ใน Aspose.Words สำหรับ .NET เราทำตามคำแนะนำทีละขั้นตอนเพื่อสร้างเอกสาร แทรกฟิลด์ที่มีข้อความอยู่ข้างใน ใช้ฟังก์ชันละเว้นข้อความภายในฟิลด์ ทำการค้นหาและแทนที่การดำเนินการด้วยนิพจน์ทั่วไป และแสดงเอกสารที่แก้ไข

คำถามที่พบบ่อย

ถาม: คุณลักษณะ “ละเว้นข้อความภายในฟิลด์” ใน Aspose.Words สำหรับ .NET คืออะไร

ตอบ: คุณลักษณะ “ละเว้นข้อความภายในฟิลด์” ใน Aspose.Words สำหรับ .NET ช่วยให้คุณสามารถระบุว่าข้อความภายในฟิลด์ควรถูกละเว้นในระหว่างการดำเนินการบางอย่าง เช่น การค้นหาและการแทนที่ข้อความ เมื่อเปิดใช้งานคุณสมบัตินี้ ข้อความภายในฟิลด์จะไม่ถูกพิจารณาระหว่างการดำเนินการ

ถาม: ฉันจะสร้างเอกสารใหม่โดยใช้ Aspose.Words สำหรับ .NET ได้อย่างไร

ตอบ: หากต้องการสร้างเอกสารใหม่โดยใช้ Aspose.Words สำหรับ .NET คุณสามารถยกตัวอย่าง aDocument วัตถุ. นี่คือตัวอย่างโค้ด C# เพื่อสร้างเอกสารใหม่:

Document doc = new Document();

ถาม: ฉันจะแทรกฟิลด์ที่มีข้อความภายในเอกสารโดยใช้ Aspose.Words สำหรับ .NET ได้อย่างไร

ตอบ: เมื่อคุณมีเอกสารแล้ว คุณสามารถแทรกฟิลด์ที่มีข้อความอยู่ข้างในได้โดยใช้ aDocumentBuilder วัตถุ. ตัวอย่างเช่น หากต้องการแทรกช่อง “INCLUDETEXT” พร้อมด้วยข้อความ “Text in field” คุณสามารถใช้InsertField วิธี:

DocumentBuilder builder = new DocumentBuilder(doc);
builder.InsertField("INCLUDETEXT", "Text in field");

ถาม: ฉันจะเพิกเฉยต่อข้อความภายในฟิลด์ใน Aspose.Words สำหรับ .NET ได้อย่างไร

ตอบ: : หากต้องการละเว้นข้อความภายในฟิลด์ระหว่างการดำเนินการครั้งต่อไป คุณสามารถใช้ aFindReplaceOptions วัตถุและตั้งค่าIgnoreFieldsทรัพย์สินเพื่อtrue:

FindReplaceOptions options = new FindReplaceOptions { IgnoreFields = true };

ถาม: ฉันจะค้นหาและแทนที่โดยใช้นิพจน์ทั่วไปใน Aspose.Words สำหรับ .NET ได้อย่างไร

ตอบ: เมื่อต้องการดำเนินการค้นหาและแทนที่ข้อความของเอกสารโดยใช้นิพจน์ทั่วไป คุณสามารถใช้ .NET ได้Regex ระดับ. ตัวอย่างเช่น หากต้องการค้นหาตัวอักษร “e” ทั้งหมดและแทนที่ด้วยเครื่องหมายดอกจัน “* “คุณสามารถสร้างRegex วัตถุและใช้กับReplace วิธี:

Regex regex = new Regex("e");
doc.Range.Replace(regex, "*", options);

ถาม: ฉันจะดูผลลัพธ์ที่แก้ไขของเอกสารใน Aspose.Words for .NET ได้อย่างไร

ตอบ: หลังจากใช้การดำเนินการค้นหาและแทนที่ คุณสามารถดูเนื้อหาที่เปลี่ยนแปลงของเอกสารได้โดยใช้GetText วิธี:

Console.WriteLine(doc.GetText());

ถาม: ฉันจะรวมฟิลด์ในผลลัพธ์เอาต์พุตใน Aspose.Words สำหรับ .NET ได้อย่างไร

ตอบ: : หากต้องการรวมข้อความไว้ในฟิลด์ในผลลัพธ์เอาต์พุต คุณสามารถเปลี่ยนตัวเลือกเพื่อไม่ให้ละเว้นฟิลด์ได้ สำหรับสิ่งนี้ คุณสามารถตั้งค่าIgnoreFields ทรัพย์สินของFindReplaceOptions วัตถุประสงค์false:

options.IgnoreFields = false;

ถาม: ฉันจะแสดงเอกสารที่แก้ไขพร้อมฟิลด์ใน Aspose.Words สำหรับ .NET ได้อย่างไร

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

doc.Range.Replace(regex, "*", options);
Console.WriteLine(doc.GetText());