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 データベースでそれを希望する場合は、生の JavaScript からリストを取得するために、おそらく数行の Perl を記述するだけです。私の知る限り、MS Word は関係ありません。

答え4

私はそのために検索/置換を使用しません。そのタスクには、Excel の「テキストを列に」を使用するのが最も簡単です。これを行うには、テキストを含む列を選択し、「データ」リボンに移動して「テキストを列に」を選択します。これを 2 回実行する必要があります。1 回は国名より前のすべてのテキストを削除するため (区切り記号は「>」です。混乱を避けるために、無関係な列は削除してください)、もう 1 回は名前の後のテキストを削除するため (区切り記号は「<」です) です。

関連情報