ワイルドカードは、万能カード、オールマイティカードとも言います。トランプではジョーカーが使われることが多く、何にでも代用できるラッキーなカードとして扱いますから、あがり(和了り)やすくなります。
Excelでは検索や置換でワイルドカードを使います。特に置換には挿入や削除の機能も含まれますから、ジョーカーの使い方を覚えたらもっと便利になります。ただし、ジョーカー自身を検索するにはどうすればよいかという問題があり注意が必要です(詳しくは後述)。
そこで、今回は、検索や置換におけるワイルドカードの使い方と、ワイルドカードとして使われる記号そのものを検索したい場合はどうすればよいかについて出題します。
- 【Excel】特定の文字列を含むセルを全部選択するには[すべて検索]をして[すべて選択]をすればよい
- Excelの「置換」のルールと注意点を習得するための基本トレーニング
- 【Excel】置換には一括削除や挿入、入れ替えの機能も含まれる
- 【Excel】文書の表記のゆれを探して、置換を用いて表記を統一する練習 - わえなび ワード&エクセル問題集
- 【Excel】ワイルドカードを用いた検索と置換、ワイルドカード自身を検索する方法
目次
- 1.ワイルドカードとは何か
- 2.アスタリスクとクエスチョン
- 3.ワイルドカードを用いた削除
- 4.ワイルドカードを用いたスペース置換
- 5.前後を消して一部分だけを抽出する
- 6.HTMLタグを除去する方法
- 7.エスケープ
- 8.サンプルファイルはこちら
- 9.動画版はこちら(無料)
1.ワイルドカードとは何か
ワイルドカード(Wild Card)とは、他のあらゆる文字に代用できるものと決められた特殊な記号のことです。
例えば、「福〇県」と表現した場合、無意識のうちに福島県?福井県?それとも福岡県?と、〇に当てはまる1文字を探そうとします。〇の個数を文字数と考えた場合、「〇〇県」なら2文字の県なので和歌山県や鹿児島県は除外となります。しかし、「~」の記号を用いて「~県」と表現した場合、うどん県や香川県など文字数に関係なく県で終わる単語を思い浮かべます。
このときに用いている記号「〇」「~」がワイルドカードです。単なる記号なのに無意識のうちに当てはまる文字を探そうとします。このとき、ワイルドカードが何文字を表すのか(文字数)によって当てはまる文字が変わります。
2.アスタリスクとクエスチョン
問題
次の図で「第〇回」という文字をすべて検索しなさい。そのうち、9回以下の大会をすべて検索しなさい。
解説
検索をします(Ctrl+F、参考:【Excel】特定の文字列を含むセルを全部選択するには[すべて検索]をして[すべて選択]をすればよい)。「第*回」と入力します。アスタリスク(*)は半角です。
すべて検索します。「第~~回」を含むセルがすべて検索されます。
半角のアスタリスク(*)を入力すると任意の文字列を表します。文字数は問いません。0文字でもよいです。このような文字を「ワイルドカード」といいます。
「*」を「?」にします。この「?」も半角です。すべて検索をします。今度は1桁だけになります。
半角の「?」は任意の1文字を表します。この「?」もワイルドカードです。2文字の場合は「??」、3文字の場合は「???」とします。
3.ワイルドカードを用いた削除
問題
次の図で、A列のカッコ書きを消しなさい。
解説
A列を選択します。カッコ書きを消すためには、カッコ書きを検索しなければいけません(参考:【Excel】置換には一括削除や挿入、入れ替えの機能も含まれる)。
カッコ書きの文字は固定ではないので、アスタリスク(*)を使います。
「(*)」と入力してこれを空白に置換すればよいです。
これで完成です。
4.ワイルドカードを用いたスペース置換
問題
次の図で、B列のカッコ書きの中の文字を消して、3文字分のスペースにしなさい。
解説
B列を選択します。置換後の文字列を「( )」にします。カッコの中は3文字分のスペースです。すべて置換します。これで完成です。
5.前後を消して一部分だけを抽出する
問題
(1)「(18歳未満)(20歳未満)」のように、カッコ書きが2連続になっているものについて、1つ目のカッコ書きを消し、2つ目だけを残す置換方法を述べなさい。
(2)「学生180人(うち女性150人)から回答を得た。」から、カッコ書きの中身「うち女性150人」だけを抽出する置換方法を述べなさい。
解説
特定の一部分の文字列を抽出するには、その「前後を削除する」ものと考えます。例えば、「(18歳未満)(20歳未満)」のうち「(20歳未満)」だけを残す場合、前半を消すと考えます。検索する文字列は「(*)(」、置換後文字列は「(」です。
ちなみに、後半のカッコ書きを消す場合は、検索する文字列は「)(*)」、置換後文字列は「)」です。
削除するものが前半と後半に分かれている場合は、2回の置換を行います。まず、検索する文字列「*(」、置換後文字列「空欄」として、カッコ書きの前の部分を削除します。「学生180人(うち女性150人)から回答を得た。」は「うち女性150人)から回答を得た。」になります。
次に、検索する文字列「)*」、置換後文字列「空欄」として、カッコ書きの後の部分を削除します。「うち女性150人)から回答を得た。」は「うち女性150人」になります。
6.HTMLタグを除去する方法
問題
A列にはHTMLの<A>タグの文字列が入力されている。
A列の文字列のうち赤い部分と、青い部分を別の列に抜き出そうとしています。
1の部分(URLの部分)と、2の部分を抜き出しなさい。
解説
特定の部分だけを残すときは、その前後を削除できるかを考えます。
A列をコピーしてB列に貼り付けます。B列を選択します。
置換の画面を出します。「<A*href="」と入力します。全て半角です。Aとhrefの間に何が入っていても削除するのでアスタリスクを入れます。
置換後の文字列は空白として、すべて置換します。左側の部分が消えます。
次に右側の部分を考えます。検索する文字列として、「"*></A>」と入力します。全て半角です。
すべて置換します。右側の部分が消えます。これで完成です。
A列をコピーしてC列に貼り付けます。C列を選択します。置換の画面を出します。
検索する文字列に「<*>」と入力します。
「<*>」を消すには「<*>」を空白に置換します。すべて置換します。これで完成です。
7.エスケープ
問題
次の図で、C列の掛け算になっている式を足し算にしなさい。
誤答例
C列を選択します。置換の画面を出します。掛け算を足し算にするには、アスタリスク(*)をプラス(+)に置換すればよいです。
すべて置換します。残念ながら、全部プラス(+)だけになってしまいました。
正解
検索でアスタリスク(*)はワイルドカードとして任意の文字列(文字数は何文字でもよい)を表し、アスタリスク(*)だけの場合は文字列全部という意味になります。1文字以上入力されているセルは全部該当します。これを置換するということは、空白以外の全てのセルをプラス(+)にするという意味になってしまいます。つまり、空白以外のセルに対する「一括入力」になります。
アスタリスク(*)の前に、半角でチルダ(~)をつけます。
すべて置換します。今度は足し算になりました。
アスタリスク(*)とクエスチョンマーク(?)はワイルドカードとして、任意の文字列を表しますが、ワイルドカードとしてではなく、本来のアスタリスク(*)とクエスチョンマーク(?)として検索するには、その直前にチルダ(~)をつけます。これを「エスケープ」といいます。
例えば、掛け算の100*100を検索する場合、「100*100」とすると100と100の間にどんな文字を入れてもよいという意味になりますから、「100~*100」とします。
ワイルドカードが使えるのは「検索する文字列」の欄だけです。探すときだけです。置換後の文字列にワイルドカードは使えません(*や?はワイルドカードとみなされない)。したがって、エスケープも検索する文字列の時だけ必要です。置換後の文字列には不要です。
ちなみに、チルダ(~)自身もエスケープが必要です。チルダ(~)を2つにします。
解説は以上です。
8.サンプルファイルはこちら
わえなび公式サイトでは、この記事で使用しているExcelのデータを無料で配布しています。ご自由にお取りください。8-16 の「サンプルファイル(ZIP)」です。
ファンダメンタルExcel_Program 8. ジャンプと置換 | わえなび [waenavi] the Theory of Word-Excel
9.動画版はこちら(無料)
この記事は、わえなびファンダメンタルExcel Program8-16 の動画の内容を書き起こし、加筆修正したものです。
完全版はYoutubeにすべて無料で公開しております。ぜひ、ご覧ください。
- 【Excel】特定の文字列を含むセルを全部選択するには[すべて検索]をして[すべて選択]をすればよい
- Excelの「置換」のルールと注意点を習得するための基本トレーニング
- 【Excel】置換には一括削除や挿入、入れ替えの機能も含まれる
- 【Excel】文書の表記のゆれを探して、置換を用いて表記を統一する練習 - わえなび ワード&エクセル問題集
- 【Excel】ワイルドカードを用いた検索と置換、ワイルドカード自身を検索する方法