この記事では、( ) ←この括弧を使ったワードでの置換と検索について説明します。
この括弧を使うことで、置換と検索の幅が広がります。
では、早速説明します。
前書き
この記事の内容はワイルドカードを使用するものですので、必要に応じて以下の記事も併せて読んでみてください。
括弧を使った置換
置換の準備
( )を使った置換を行うには、ワイルドカードを使用できる状態にする必要がありますので、以下の手順を行ってください。
step
1ワードファイルを開きます
step
2「Ctrl」キーを押しながら「H」キーを押します
(以下の画面が開きます)
step
3オプションを押します
step
4「ワイルドカードを使用する」にチェックを入れます
これで準備が整いました!
基本的な考え方
( )を使った置換の基本的な考え方について説明します。
ここでは説明をシンプルにするために、あえて変な例を挙げます。
この方法を使うと、例えば、以下のような置換ができます。
この例では、以下の条件で置換を行っています。
( )を使った置換では、検索する文字列のうちで置換後の文字列に再利用したい部分を( )でくくります。
今回の例では、「あ」、「い」、「う」、「え」、「お」のそれぞれを再利用するので、それぞれを( )で囲み、「(あ)(い)(う)(え)(お)」としています。
(「ワイルドカードを使用する」にチェックを入れた状態では、( )は検索文字列とは認識されませんので、( )を使っても「あいうえお」で検索した場合とヒットする文字列は同じです(つまり、「あいうえお」がヒットします))。
置換後の文字列には、「¥」を使用します。
「¥」の後に番号を付けることで、どの( )の中の部分を再利用するかを指定できます。
この例では、以下のような対応関係になります。
つまり、¥の後の番号は、( )の登場順序に対応します。
結果的に、¥1は「あ」、¥2は「い」、¥3は「う」、¥4は「え」、¥5は「お」に対応するため、
置換後の文字列に「¥5¥4¥3¥2¥1」を指定すると、置換結果は、「おえういあ」となります。
ココがポイント
¥の後の番号は、( )←コレの登場順序で決まる
もっとも、この例の置換を行うには、以下のように素直な条件を指定すればいいのですが、今回は、( )を使った置換の基本を説明するために、あえて変な例を挙げました。
検索する文字列:あいうえお
置換後の文字列:おえういあ
この方法をさらに説明するために、あと2つだけ変な例を挙げます。
追加例1
以下のような置換も可能です。
この場合の( )と¥の対応関係は、以下の通りです。
最初の( )が¥1に対応し、2つ目の( )が¥2に対応しますので、置換結果は以下のようになります。
追加例2
以下のような置換も可能です。
この場合の( )と¥の対応関係は、以下の通りです。
置換結果は、以下のようになります。
このように、置換後の文字列に¥1や¥2などを複数回使用することも可能です。
基本的な考え方は理解できたけど、実際に使う場面がイマイチ想像できません
以下に、実際の使用場面を挙げてさらに説明しますね
具体例
具体例①
大量に存在する「2024年4月1日」形式の日付を「2024/4/1」の形式に変換したい
これを手動で行うのはとても大変ですが、このような場合に今回の置換法が役立ちます。
この例の置換を実現したい場合には、以下のように記載します。
使用したワイルドカードについて説明します。
「[0-9]{4}」は、4桁の半角数字を表します。
上の例では、これを( )の中に入れて、「([0-9]{4})」と記載しています。
(西暦は常に4桁であるため、4桁のワイルドカードを使用します)
「[0-9]{1,2}」は、1~2桁の半角数字を表します。
上の例では、これを( )の中に入れて、「[0-9]{1,2}」と記載しています。
(月は1月や12月が考えられるため、1~2桁のワイルドカードを使用します)
(日も1日や31日が考えられるため、1~2桁のワイルドカードを使用します)
( )と¥の対応関係は以下のとおりです。
置換結果は、以下のようになります。
具体例②
1000円の形式を1,000円の形式に変換したい
この例の置換を実現したい場合には、以下のように記載します。
使用したワイルドカードについて説明します。
「[0-9]{1}」は、1桁の全角数字を表します。
上の例では、これを( )の中に入れて、「([0-9]{1})」と記載しています。
「[0-9]{3}」は、3桁の全角数字を表します。
上の例では、これを( )の中に入れて、「([0-9]{3})」と記載しています。
( )と¥の対応関係は以下のとおりです。
置換結果は、以下のようになります。
具体例③
機械などの「型式12345」という連続5桁の数字の型式表記を「型式123-45」の形式に変換したい
この例の置換を実現したい場合には、以下のように記載します。
使用したワイルドカードについて説明します。
「[0-9]{3}」は、3桁の半角数字を表します。
上の例では、これを( )の中に入れて、「([0-9]{3})」と記載しています。
「[0-9]{2}」は、2桁の半角数字を表します。
上の例では、これを( )の中に入れて、「([0-9]{2})」と記載しています。
( )と¥の対応関係は以下のとおりです。
置換結果は、以下のようになります。
具体例④
100mLや5mLなどの表記を、「数字」+「空白」+「mL」の形式(つまり、100 mLや5 mL)にしたい
科学系の英語文書(学術論文など)では、数字と単位の間に空白を入れなくてはいけない場合が多いです。
しかし、どうしてもミスしていまい、空白無しで記載されている箇所が存在したりするものです。
論文を書き終えたとき、空白なしの100mLなどを自分で発見していちいち手作業で空白を挿入するのは大変です。
そこで、この置換法が役立ちます。
この場合は、以下のように記載します。
使用したワイルドカードについて説明します。
[0-9]は、一桁の半角数字を表します。
上の例では、これを( )の中に入れて、「([0-9])」と記載しています。
(例えば、100mLでも10mLでも1mLでも、一の位とmLをヒットさせればいいため、検索する文字列には「一桁の半角数字」+「mL」の形式を指定しています)
( )と¥の対応関係は以下のとおりです。
置換結果は、以下のようになります。
まとめ
以上のように、( )を使用することで、ヒットさせた文字列の一部または全部を置換後の文字列に再利用することができます。これによって非常に柔軟な置換が行えるため、この方法をマスターしておくととても便利です。
ここまでは、括弧を使った置換について説明しましたが、実は、( )と¥はワイルドカード検索にも使用することができます。
括弧を使った検索
検索の準備
置換の準備に記載したステップ4まで進んだ後、以下のイラストのように検索タブを選択してください(「ワイルドカードを使用する」にチェックを入れて下さい)。
これで準備完了です。
基本的な考え方
括弧を使った検索の基本的な考え方は、括弧を使った置換と全く同じです。
ですので、まだこの記事の最初に記載した括弧を使った置換についての説明を読んでいない方は、先にそちらを読んでから戻ってきてください。
括弧を使った置換では、検索する文字列のうちで再利用したい部分を( )で囲み、置換後の文字列の入力ボックス中で¥を使って再利用部分を指定しました。
一方、括弧を使った検索では、この指定を検索文字列の入力ボックス中で行います
説明を分かりやすくするために、置換のときと同様に、少し変な例を挙げて説明します。
例えば、以下のような検索を行えます。
( )と¥の対応関係は以下のとおりです。
つまり、¥1は「あ」に対応しますので、この検索文字列は、「ああ」に相当するものです。
したがいまして、この検索文字列で検索を行うと、「ああ」がヒットします。
もっとも、「ああ」をヒットさせたいのであれば、こんな変な検索の仕方をしなくても、ただ素直に「ああ」と検索すればいいのですが、括弧を使う検索の例として分かりやすいため、この例を使用しました。
もう1つ同様の例を挙げます。
この検索文字列での( )と¥の対応関係は以下のとおりです。
つまり、¥1は最初に登場した( )の中の「あ」に対応し、¥2は2番目に登場した( )の中の「い」に対応しますので、この検索文字列は、「あいあいい」に相当するものです。
したがいまして、この検索文字列で検索を行うと、「あいあいい」がヒットします。
以上が基本的な考え方になります。
次は、実用的な具体例を挙げます。
具体例
連続する同じひらがな三文字を検索したい
同じひらがなが三つ連続する文字列というものは、誤記である可能性がかなり高いものですので、これを検出することは有効です。
この例の検索を実施したい場合には、以下のように記載します。
[ぁ-ん]は、ひらがな一文字を表すワイルドカードです。
上の例では、これを( )の中に入れて、([ぁ-ん])と記載しています。
( )と¥の対応関係は以下のとおりです。
つまり、この検索文字列は、連続する同じひらがな三文字に相当するものですので、例えば、「あああ」、「かかか」、「ぅぅぅ」、「っっっ」などがヒットします。
このように、( )を使った検索は、連続する同じ種類の文字を検索するのに便利です。
したがいまして、例えば、「([一-龠])¥1¥1¥1」と記載すると、「同じ漢字が4つ連続する文字列」をヒットさせることができます(例えば、「漢漢漢漢」がヒットします)。
([一-龠]は、漢字一文字を表すワイルドカードです)
さらに例を挙げると、同じ数字が連続する3桁の半角数字をヒットさせたいのであれば、「([0-9])¥1¥1」と記載します(例えば、「000」、「333」などがヒットします)。
(これらの例を実際に行う場合は、¥は半角で使用してください)
補足説明①
この記事で紹介した¥1や¥2は、「検索する文字列」と「置換後の文字列」の両方に使用することもできます。
例えば、以下のような置換条件を設定することができます。
対応関係は以下のようになります。
「[ぁ-ん]」は、ひらがな一文字を表すワイルドカードです。
この例の条件でヒットするのは、「したした」、「かたかた」、「ああああ」などです。
この条件で置換を行うと、例えば、「したした」は「した」に変換され、「かたかた」は「かた」に変換され、「ああああ」は、「ああ」に変換されます。
仮に、置換後の文字列を「★¥1¥2」とした場合は、「したした」は「★した」に変換されます。
このように、( )と対応する¥1、¥2などを使用すると、極めて柔軟な置換ができます。
補足説明②
この記事の検索の説明では、( )と¥を使用する検索と置換にフォーカスしてきましたが、同じことを他の記述でも実現できる場合があるため、以下に紹介します。
例えば、以下の2つは、同じ検索結果になります。
検索文字列①:([ぁ-ん])¥1¥1 (「¥」は、実際の検索では半角で使用してください)
検索文字列②:([ぁ-ん]){3}
いずれの場合も、同じひらがなが3つ連続する文字列がヒットします。
各検索文字列をあえて文章にすると、
検索文字列①の意味は、「任意のひらがな一文字+その任意のひらがな一文字+その任意のひらがな一文字」となり、
検索文字列②の意味は、「任意のひらがな一文字(同じもの)が3つ」となります。
注意点は、いずれの検索文字列にも( )が使用されてる点です。
仮に、検索文字列②を、( )を使用せずに「[ぁ-ん]{3}」に変更した場合、その意味は、「任意のひらがな一文字+任意のひらがな一文字+任意のひらがな一文字」の意味となり、各ひらがな一文字は、独立したものです。
言葉での説明では分かりにくいと思いますので、以下のイラストにヒットパターンを示します。
「[ぁ-ん]{3}」を検索文字列に使用した場合は、各ひらがなが異なっていても、ひらがなが3つ連続していればヒットします。
この記事の説明はこれで終わりです。
今回紹介した方法は、「検索する文字列」に( )を含めることで、( )の中の文字列を「置換後の文字列」に再利用できるものでした。
実は、( )を使う以外にも、検索でヒットした文字列をまるまるそのまま置換後の文字列に使い回す方法があります。
具体的には、「^&」←これを使います。
「^&」←これについては、以下の記事に詳しく記載しましたので、併せて読んでみてください。
この記事に書いてある内容は、ワード文書中の誤記の検出にも使用できるものです。
誤記発見に関する以下の関連記事を読んでいただくことで、( )を使った検索/置換の具体的な使用場面がさらに広がります。
以下の記事では、練習問題を紹介していますので、よろしけば挑んでみてください。
この記事で紹介しました置換と検索を最大限に活用するには、ワイルドカードの知識が必要になりますので、必要に応じて以下の記事も併せて読んでみてください。
また、ワイルドカードを使用しない、別の柔軟な置換も紹介しています。
よろしければ、以下の記事のもご覧ください。
最後まで読んでいただきましてありがとうございました!