Web関係の解析を行っていると、URLからドメイン部分のみ抽出したい時があります。

https://bluegoat.jp/blog/excel-url-domain/

https://bluegoat.jp/

この作業、エクセルでは

=LEFT(URLのセル,FIND("@",SUBSTITUTE(URLのセル,"/","@",3)))

と入力することで、ドメイン部分のURLのみ抽出することができます。

エクセル URLからドメインのみ抽出

計算式の仕組み

この計算式は

  1. SUBSTITUTE
  2. FIND
  3. LEFT

の3つの関数が使われています。

SUBSTITUTE(文字列, 検索文字列, 置換文字列, 置換対象)

SUBSTITUTE関数は、文字列から検索文字列を検索し、置換文字列で置き換えることができます。

SUBSTITUTE(URLのセル,"/","@",3)の場合は、
URLの3番目の"/"を"@"に置き換えるという意味になります。

エクセル URLからドメインのみ抽出

補足(最後の数字が無い場合)

=SUBSTITUTE(A1,"/","@")

https:@@bluegoat.jp@blog@excel-url-domain@
すべての検索文字を置換文字で置き換えます。

FIND(検索文字列, 文字列)

FIND(検索文字列, 文字列)は、検索文字列から最初に一致した文字列までの文字数を返します。

エクセル URLからドメインのみ抽出

=FIND("@","https://bluegoat.jp@blog/excel-url-domain/")

20
(最初に"@"が出現するまでの文字数=20を返します)

LEFT(文字列, 文字数)

LEFT関数は、文字列の左から数えた文字数を切り取った文字列を返します。

FIND関数でURLの中で3番目の"/"の位置が特定できているので、3番目の"/"の位置までを切り取ります。

=LEFT("https://bluegoat.jp/blog/excel-url-domain/", 20)

https://bluegoat.jp/
左から数えた文字数を切り取った文字列を返します。
これらの3つの関数を組み合わせることで、ドメイン部分のみ抽出できます。
なお、"http://"や"https://"も削除したい場合は、置換機能を使っています。
おすすめの記事