Microsoft Word 中尋找並取代的正規表示式

Microsoft Word 中尋找並取代的正規表示式

我想從國家/地區名稱中刪除前導和尾隨標籤。
在我的範例中,這些標籤是<li><a>

<li><a href="http://afghanistan.makaan.com/">Afghanistan</a></li>
<li><a href="http://albanie.makaan.com/">Albanie</a></li>
<li><a href="http://algérie.makaan.com/">Algérie</a></li>

結果應該是:

Afghanistan
Albanie
Algérie

在 Microsoft Word 中,我想使用尋找和替換功能透過正規表示式來完成它。

如何在 MS Word 中使用正規表示式?

答案1

不要將輸入文字複製到 Word,而是將其複製到 Notepad++ 或任何其他具有完整 RegEx 支援的編輯器。

>用於選擇標籤之外的所有內容或和<符號之間的所有內容的正規表示式字串。

(?<=>).*?(?=<)

在此輸入影像描述

  • (?<=>) 是一個向後看。它尋找>標誌並充當錨。這樣您就可以排除搜尋字串,這很重要,因為您不希望<Afghanistan
  • .*?是一個惰性量詞並選擇所有內容直到下一個表達式
  • (?=<) 是一個展望並找出一個<標誌,但排除搜尋到的標誌本身。就像後面的眼神一樣

您不想選擇國家/地區名稱。您想要刪除每個標籤。您需要與第一個正規表示式相反的內容。類似的東西

<.*?>

在此輸入影像描述

  1. 開啟 Notepad++ 搜尋和取代對話框
  2. 選擇使用正規表示式
  3. 找什麼:<.*?>
  4. 替換為:無

答案2

這在 MS Word 中很容易做到尋找和替換,沒有正規表示式,沒有 JavaScript 等。

如果轉義括號,它會找到實際的括號字元。因此,打開通配符後,表達式\<*\\>將找到尖括號之間的所有內容。只需將其替換為任何內容即可。

答案3

看起來這就是你所需要的。

鑑於最新的評論(你只想在 javsacript 中使用它)-我會看起來像這裡

如果你想在 SQL 資料庫中使用它,那麼我可能只需編寫幾行 Perl 即可為你提供原始 javascript 中的清單。據我所知; MS Word 不包含在內。

答案4

我不會為此使用查找/替換。最簡單的方法是使用 Excel 中的「文字到列」來完成該任務。為此,請選擇包含文字的列,轉到“資料”功能區並選擇“文字到列”。您需要執行兩次,一次刪除國家/地區名稱之前的所有文字(分隔符號為“>” - 確保刪除無關的列以避免混淆),一次刪除名稱之後的文字(分隔符號)符號將是“<” )。

相關內容