תוסף חיפוש רגקס בוורד
-
עקב המגבלות של החיפוש הרגיל בוורד וגם החיפוש עם תוים כלליים, פיתחתי תוסף לחיפוש בוורד באמצעות רגקס. (למשל, בחיפוש המובנה של וורד אין אפשרות לחפש אפס או יותר מופעים).
חשוב לזכור: חיפוש באמצעות רגקס אינו "עצל" כמו החיפוש הרגיל של וורד!
מצו"ב לינק עם מדריך יפה כיצד לערוך חיפוש רגקס:
https://tchumim.com/post/10185לאחר התקנת התוסף, יופיע לחצן חדש בתפריט החיפוש שבכרטיסיית "בית", כפי שמופיע בתמונה.
שימו לב: לחיצה על אנטר עובר למופע הבא לחיצה על החיצים למעלה ולמטה עובר למופע הקודם או הבא גם כאשר סמן העכבר נמצא בתוך תיבת החיפוש. -
למרות שזוהי שאלה כללית אני שם אותה פה כי אנשים שאלו אותי את זה בקשר לתוסף:
יש למישהו רעיון למחרוזת טובה של רגקס שאפשר להשתמש איתה לדמות בחירת מרווח בין מילים כמו שיש בחיפוש בר אילן (כלומר מקסימום כמות מילים בין מילות החיפוש)?
בחיפוש המובנה של וורד הניסיונות שלי עלו בתוהו (גם לעשות על ידי מרווח בין אותיות לא מצליח).נ.ב. לכאורה עדיף שיהיה טוב גם עבור מקרה שהמילה מכילה ראשי תיבות.
עריכה: אולי משהו כזה:
tchumim(\W*\w*){1,5}com
https://regex101.com/r/eeOTX0/4
אשמח לקבל משוב. -
מדריך יפה כיצד לערוך חיפוש רגקס
אפשר גם לבנות קודי חיפוש לרגקס דרך ממשק (באנגלית) בלי שום ידיעה קודמת ברגקס.
@pcinfogmach אולי אפשר להוסיף גם "החלפה"?
-
@מד כתב בתוסף חיפוש רגקס בוורד:
אולי אפשר להוסיף גם "החלפה"
חשבתי על זה, אך יש צורך בשיקול דעת. כי מי שאינו בקיא היטב ברגקס עלול לשבש את המסמך שלו בקלות עם החלפות לא מדויקות.
בנוסף, החלפה כללית באמצעות רגקס עלולה לפגוע בעיצוב המסמך.אשמח לשמוע משוב בנושא ממי שיכול.
-
@מד כתב בתוסף חיפוש רגקס בוורד:
בשביל זה יש את קטרל+Z...
לזכרוני זה לא באופן מובנה, כלומר ביטול של וורד לא יבטל מה שבוצע בקוד (וודאי לא פעולות מרובות)
אני לא יודע איך ואם אפשר לממש את זה בכלל, וזה לבד סיבה שזה פעולה מסוכנת.
אולי לעשות גיבוי למסמך בכל החלפה. -
@dovid כתב בתוסף חיפוש רגקס בוורד:
אני לא יודע איך ואם אפשר לממש את זה בכלל, וזה לבד סיבה שזה פעולה מסוכנת.
@yossiz תיקן אותי בעדינות בפרטי, זה ממש קל ומדהים, עם UndoRecord:
https://learn.microsoft.com/en-us/office/vba/word/concepts/working-with-word/working-with-the-undorecord-object -
אז
הכל מוכן, @pcinfogmach כשיהיה לך
עם
ה-
של
ממתינים על
הבא שלך!!
-
בינתים מצאתי את wordiscover שעושה את זה.
אפשר להוריד מכאן. (לחלץ ולהריץ את Wordiscover.vsto)יש גם את RegEx-tools-for-word-or-wps אך זה בסינית ואין הקוד פתוח.
-
@dovid
כמה מילים על UndoRecord, אם כבר הזכירו אותו, כדאי לדעת:
כמו שכבר רמזו לעיל. אם בוצעה רק פעולה אחת, אין צורך להשתמש בו כלל. וורד קולט כל פעולה שנעשית ב-vsto או במאקרו ואפשר לבטל אותם כמו כל פעולה אחרת.
יש לשים לב שהוא מוגבל לכמות מסוימת של פעולות (כ-15 לערך אינני זוכר כעת). לכן, כל קוד המבוסס עליו צריך לכלול לוגיקה שתתמודד עם הגעה למגבלה זו.
מומלץ ליצור עבורו מחלקה (class) עם IDisposable. כך ניתן למנוע מצב שבו המפתח שוכח לסיים את ההקלטה, וההקלטה תיסגר אוטומטית גם במקרה של שגיאה. -
@מד כתב בתוסף חיפוש רגקס בוורד:
בינתים מצאתי את wordiscover שעושה את זה.
התקנתי. אבל לא נפתח לי שום חלונית חיפוש.
מעניין הוא כותב שם שעשה הגבלה בחיפוש שיחפש בכל פיסקה בנפרד.
אצלי זה לא ככה מה לדעתכם עדיף? -
@pcinfogmach כתב בתוסף חיפוש רגקס בוורד:
יש לשים לב שהוא מוגבל לכמות מסוימת של פעולות (כ-15 לערך אינני זוכר כעת). לכן, כל קוד המבוסס עליו צריך לכלול לוגיקה שתתמודד עם הגעה למגבלה זו.
אם אתה צודק, אז קברת את הפתרון. החלפה ברג'קס זה המון פעולות כי אתה משנה פסקאות במסמך, וכמובן זה לא מוגבל ל15.
אני מתפלא שאין לזה זכר בתיעוד ושום אזכור שהצלחתי למצוא בגוגל, אתה בטוח בעובדה הזו?נ.ב. נראה לי הגיוני שלא לאפשר רגקס חוצה פסקאות ואפילו מעברי שורה. זה לא נורמלי בעיני שיצטרכו כזה דבר.
-
@pcinfogmach כתב בתוסף חיפוש רגקס בוורד:
התקנתי. אבל לא נפתח לי שום חלונית חיפוש.
נסה לפתוח קובץ שמור במחשב, אצלי החלון לא נפתח בקבצים חדשים שלא נשמרו עדיין.
מעניין הוא כותב שם שעשה הגבלה בחיפוש שיחפש בכל פיסקה בנפרד.
אצלי זה לא ככה מה לדעתכם עדיף?זה בודאי עדיף כמו אצלך, כי אצלו החיפוש מאיט קצת.
@pcinfogmach כתב בתוסף חיפוש רגקס בוורד:
החשש שלי שהמשתמש לא יבין כלל שהוא שיבש את המסמך שלו - עד שכבר יהיה מאוחר מדאי.
גם אצל החיפוש והחלפה המובנה של וורד, מתרחשים פיגועים כאלו, הפסדו יוצא בשכרו
אולי איזושהי הודעת התרעה?
ליתר שאת...
@dovid כתב בתוסף חיפוש רגקס בוורד:
נ.ב. נראה לי הגיוני שלא לאפשר רגקס חוצה פסקאות
כמובן רק לגבי החלפה, לא לגבי חיפוש.
ואפילו מעברי שורה.
מוגזם מדי לענ"ד.
-
@dovid כתב בתוסף חיפוש רגקס בוורד:
אם אתה צודק, אז קברת את הפתרון. החלפה ברג'קס זה המון פעולות כי אתה משנה פסקאות במסמך, וכמובן זה לא מוגבל ל15.
אני מתפלא שאין לזה זכר בתיעוד ושום אזכור שהצלחתי למצוא בגוגל, אתה בטוח בעובדה הזו?סליחה כנראה שלא הסברתי נכון נרא מדבריך שהבנת שהוא מוגבל בכמות הפעולות
כוונתי היתה שהוא מוגבל לכמות הפעמים שאפשר להשתמש בו.כלומר שיש מגבלה על כמה פעמים אפשר להתשמש ב-undorecord ולא על כמה פעולות אפשר לעשות בתוך undorecord אחד.
לשאלתך האם אני בטוח התשובה כן! אני כבר משתמש הפונקציה הזו כבר הרבה זמן. וזה די ברור לי שזה כך.
-
@מד כתב בתוסף חיפוש רגקס בוורד:
נסה לפתוח קובץ שמור במחשב, אצלי החלון לא נפתח בקבצים חדשים שלא נשמרו עדיין.
תודה! עכשיו עובד באמת אבל הממשק קצת השתבש
נ.ב. כדי למנוע בלבול - אני כותב פה על תוכנה אחרת ש-@מד הציע ולא על התוכנה שאני פרסמתי.
-