web-dev-qa-db-ja.com

Microsoft Word 2013で正規表現を検索して置換

不要なマークアップを多く含む電子書籍ドキュメントを編集しています。テキストに次のようなコードのセクションがいくつかあります。

<i>Some text here</i>

2つのiタグ間のフレーズを検索し、iタグを削除し、テキストにスタイルを適用する正規表現の検索と置換を実行しようとしています。

検索に使用しているものは次のとおりです。

Find: (<i>)(*)(</i>)
Replace: \2

また、スタイル> i(斜体)を選択しています。これは、テキストに斜体を適用するように変換ソフトウェアに指示します。 i-tagをそのままにしておくと、ScribeNetの変換プロセスで16進数値に変換されるため、電子書籍でリテラルテキストとして表示されます。乱雑。

この検索を実行すると、結果が得られません。 「ワイルドカードを使用」にチェックマークが付いています。私は何が欠けていますか? MicrosoftのヘルプWebサイトによると、*は任意の数または種類の文字を表すために使用され、個々の文字列は括弧で囲まれることになっています。

17
1John5vs7

ワイルドカードとして定義されている文字を検索するには、バックスラッシュ(\)その文字の前。 *自体は任意の文字列と一致するため、範囲限定詞を使用して(1以上

Find: \<i\>(*{1,})\</i\>
Replace: \1
14
hwnd

\<i\>(*{1,})\</i\>を検索し、\1に置き換えます。 Use wildcardを確認することを忘れないでください。

Wordの「正規表現」の参照表はこちらにあります。 http://office.Microsoft.com/en-ca/Word-help/find-and-replace-text-by-using-regular-expressions -advanced-HA102350661.aspx

  • <および>は、エスケープする必要がある特殊文字です
  • *は任意の文字を意味します
  • {1,}は1回以上を意味します
7
dee-see