在 Microsoft Word 中使用正規表示式尋找和替換

在 Microsoft Word 中使用正規表示式尋找和替換

我讀過有關的文章常用表達已經。我的願望是在 Word 中操作帶引號的字串(我有 2013 版本)。

我需要用括號替換引號字元。

例如:

“你好世界。”

應替換為

(你好世界。)

我嘗試搜尋"*"並替換為\(*\).

但我的嘗試並沒有成功。

答案1

Microsoft Word 2007「尋找與取代」協助說:「當使用通配符如果選取複選框,Word 將僅查找您指定的確切文字。這個有點神秘的說法意味著

  • 搜尋字母文字區分大小寫(儘管您可以使用類似 的搜尋表達式實現不區分大小寫[Hh][Ee][Ll][Ll][Oo]),
  • 直引號 ( ") 和彎引號 () 不等價 - 搜尋一個不會找到其他任何一個,

……可能還有其他事情。

因此,如果您的文件使用直引號,請搜尋"([!"]@)". (Microsoft Word 通配符搜尋運算式 – 它們是不是正規表示式 – 用於表示任何字符[!qx-z]其他qxyz, 因為^用於其他事物(與\真正的正則表達式中的角色相比),它們用來@表示前一個字元或表達式的一次或多次出現,因為*意味著任何字串,我猜他們認為分配對於不習慣真正的正規表示式的使用者來說,它的特殊含義+ 可能會讓人感到困惑。如果您的文件使用大引號,請搜尋“([!“”]@)”.或者,如果兩者都有,請搜尋[“"]([!“"”]@)["”].無論哪種情況,都替換為(\1).指\1搜尋表達式中第一個(也是唯一一個)括號分隔組的內容,即引號之間的文字。有點令人困惑的是,這裡的括號只是文字字元;所以這給出了用括號替換引號的結果。

請注意,因為@意味著或多次出現前一個字元或表達式(即,它的作用類似於+正規表示式),這些指令將找不到空字串(即,兩個連續的引號字符,它們之間沒有任何內容)。

相關內容