מצא והחלף טקסט ב-Word C++

מצא והחלף היא תכונה שימושית המסופקת על ידי MS Word המאפשרת לך לעדכן את כל המופעים של טקסט מסוים בבת אחת. לפיכך, אינך צריך לאתר ולהחליף את הטקסט במסמך כולו באופן ידני. במאמר זה תלמד כיצד למצוא ולהחליף טקסט במסמכי Word מתוך יישומי C++. זה יכול להיות שימושי כאשר אתה צריך להחליף טקסט מסוים במספר מסמכים במכה אחת.

C++ API לאיתור והחלפה של טקסט

Aspose.Words for C++ היא ספריית C++ ליצירת מסמכי וורד קיימים חדשים ולטפל בהם. ה-API תומך במגוון רחב של תכונות אוטומציה בסיסיות כמו גם מתקדמות של Word. אתה יכול להוריד את חבילת ה-API או להתקין אותה באמצעות NuGet.

Install-Package Aspose.Words.Cpp

מצא והחלף טקסט במסמכי Word באמצעות C++

להלן השלבים לאיתור והחלפת טקסט במסמכי Word באמצעות Aspose.Words עבור C++.

  • טען את מסמך Word באמצעות המחלקה מסמך.
  • החלף את המילה הרצויה באמצעות Document->getRange()->Replace(u"sad", u"bad", System::MakeObject ) שיטה.
  • שמור את מסמך ה-Word המעודכן בשיטת מסמך->שמור(מחרוזת).

דוגמת הקוד הבאה מראה כיצד למצוא ולהחליף את המילה “עצוב” ב"רע" במסמך Word באמצעות C++.

// טען מסמך MS Word
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"Document.doc");

// מצא והחלף את הטקסט
doc->get_Range()->Replace(u"sad", u"bad", System::MakeObject<FindReplaceOptions>(FindReplaceDirection::Forward));

// שמור את המסמך המעודכן 
doc->Save(u"updated.doc");

מצא והחלף טקסט באמצעות ביטויים רגולריים

ניתן גם להגדיר את הביטויים הרגולריים כדי למצוא ולהחליף את המילים העוקבות אחר דפוס מסוים. לדוגמה, אתה יכול להחליף את המילים “עצוב” ו"מטורף" במילה “רע”. להלן השלבים לאיתור והחלפת מילים התואמות לביטוי רגולרי במסמך Word.

דוגמת הקוד הבאה מראה כיצד למצוא ולהחליף טקסט באמצעות ביטוי רגולרי ב-C++.

// טען מסמך MS Word
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"Document.doc");

// צור אפשרויות חיפוש והחלפה
System::SharedPtr<FindReplaceOptions> options = System::MakeObject<FindReplaceOptions>();

// מצא והחלף את הטקסט
doc->get_Range()->Replace(System::MakeObject<System::Text::RegularExpressions::Regex>(u"[s|m]ad"), u"bad", options);

// שמור את המסמך המעודכן 
doc->Save(u"updated.doc");

מצא והחלף טקסט באמצעות מטא-תווים

במקרים מסוימים, הטקסט שברצונך להחליף יכול לכלול את הפסים, כלומר מעבר שורה, מעבר פיסקה, מעבר סעיף וכו’. על מנת להתמודד עם תרחישים כאלה, Aspose.Words for C++ תומך במטא תווים הבאים במחרוזות החיפוש וההחלפה .

  • &p להפסקת פסקה
  • &b עבור הפסקת קטע
  • &m עבור מעבר עמוד
  • &l עבור מעבר שורה ידני

דוגמת הקוד הבאה מראה כיצד למצוא ולהחליף טקסט באמצעות מטא-תווים במסמך Word.

// טען מסמך MS Word
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"Document.doc");

// צור אפשרויות חיפוש והחלפה
System::SharedPtr<FindReplaceOptions> options = System::MakeObject<FindReplaceOptions>();

// מצא והחלף את הטקסט
doc->get_Range()->Replace(u"This is Line 1&pThis is Line 2", u"This is replaced line", options);
doc->get_Range()->Replace(u"This is Line 1&mThis is Line 2", u"Page break is replaced with new text.", options);

// שמור את המסמך המעודכן 
doc->Save(u"updated.doc");

התעלם מטקסט במהלך פעולת חיפוש והחלפה

Aspose.Words עבור C++ מאפשר לך גם להתעלם מהטקסט בתוך השדות ומהתיקונים במהלך פעולת החיפוש והחלפה. המחלקה FindReplaceOptions מאפשרת לך לציין את האפשרויות להוספת התאמה אישית זו. המחלקה FindReplaceOptions מספקת את השיטות הבאות להתעלם מטקסט בתרחישים שונים:

דוגמת הקוד הבאה מראה כיצד להתעלם מטקסט בכל אחד מהתרחישים שהוזכרו לעיל.

// טען מסמך MS Word
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"Document.doc");

// צור אפשרויות חיפוש והחלפה
System::SharedPtr<FindReplaceOptions> options = System::MakeObject<FindReplaceOptions>();

// החלף 'e' במסמך תוך התעלמות מטקסט בתוך השדה
options->set_IgnoreFields(true);
doc->get_Range()->Replace(System::MakeObject<Regex>(u"e"), u"*", options);

// החלף 'e' במסמך תוך התעלמות מטקסט שנמחק
options->set_IgnoreDeleted(true);
doc->get_Range()->Replace(System::MakeObject<Regex>(u"e"), u"*", options);

// החלף 'e' במסמך תוך התעלמות מטקסט שהוכנס
options->set_IgnoreInserted(true);
doc->get_Range()->Replace(System::MakeObject<Regex>(u"e"), u"*", options);

// שמור את המסמך המעודכן 
doc->Save(u"updated.doc");

קבל רישיון חינם

אתה יכול לקבל רישיון זמני בחינם כדי לנסות את ה-API ללא מגבלות הערכה.

סיכום

במאמר זה, ראית כיצד למצוא ולהחליף טקסט במסמכי Word באמצעות C++. המדריך צעד אחר צעד ודוגמאות קוד הראו כיצד להתאים אישית את תכונת החיפוש והחלפה בתרחישים שונים. אתה יכול לחקור עוד על ה-API לאוטומציה של C++ Word באמצעות תיעוד.

ראה גם