Youtubeで公開している内容をまとめたものです。
FINDとSEARCH関数の違い
こんにちは、JIMOVEの山口です。
今回はExcelで文字列の中から特定の文字列が何文字目に存在するかを検索するFIND
関数とSEARCH
関数の違いについて解説します。
FIND関数の基本
FIND
関数は、文字列の中から特定の文字列を検索し、その最初の位置を返します。
この関数は大文字と小文字を区別し、次のように使用します。
=FIND(検索文字列,対象文字列, [開始位置])
開始位置は省略可能で、指定しない場合は文字列の最初から検索をします。
SEARCH関数の基本
SEARCH
関数もFIND
関数と同様に文字列の中から特定の文字列を検索しますが、大きな違いは大文字と小文字を区別しない点です。
また、ワイルドカード("*"
や”?”)の使用が可能で、より柔軟な検索が行えます。
使い方はFIND
関数と同様ですが、SEARCH
関数は
=SEARCH(検索文字列,対象文字列, [開始位置])
と記述します。
大文字と小文字の区別
FIND
関数では大文字と小文字が厳密に区別されるため、”Apple”と”apple”は異なる文字列として扱われます。
一方で、SEARCH
関数ではこれらは同じものとみなされます。
この違いを利用して、どちらの関数を利用するかを考えます。
ワイルドカードの使用
SEARCH
関数では、ワイルドカードを使用して、特定のパターンに一致する文字列を検索できます。
このワイルドカードというのは、あいまいな検索ができるという意味で、例えば、”app*”という検索文字列は”apple”や”application”など、”app”で始まる任意の文字列が一致します。
FIND
関数ではこのような検索はできません。
実践例
例えば、”D”という文字列を”ABCDEFGH”から検索する場合、FIND
関数とSEARCH
関数では異なる結果になります。
まず、FIND
関数を使って文字列の中から特定の文字が何文字目にあるかを検索します。
この関数は大文字と小文字を区別します。
例えば、大文字の”D”で検索すると、”D”が含まれる位置を正確に返しますが、小文字の”d”を同様に検索しようとすると結果が出ません。
これはFIND
関数が大文字と小文字を区別するためです。
SEARCH関数の使用例
SEARCH
関数はFIND
関数と似ていますが、大文字と小文字を区別しない点が異なります。
これにより、”D”も”d”も同様に検索可能となり、より柔軟な検索が可能です。
また、SEARCH
関数はワイルドカード(”*”や”?”)を使用できるため、部分一致の検索ができます。
まとめ
- FIND関数は大文字と小文字を区別し、ワイルドカードは使用できません。
- SEARCH関数は大文字と小文字を区別せず、ワイルドカードの使用が可能です。
このような違いを理解し、用途に応じて適切な関数を選択しましょう。
コメント