スプレッドシートにGoogleドライブに格納されている画像のURLの一覧があって、そこから画像IDを抽出して横の列に表示させたときのメモ。需要はなさそう・・・。
画像のURLは末尾がview?usp=share_linkとview?usp=sharingの2パターンがあったので、share_linkが含まれる場合とそれ以外で処理を変えています。
=IF(REGEXMATCH(A1,"share_link"),SUBSTITUTE(SUBSTITUTE(A1,"https://drive.google.com/file/d/",""),"/view?usp=share_link",""),SUBSTITUTE(SUBSTITUTE(A1,"https://drive.google.com/file/d/",""),"/view?usp=sharing",""))
IF文とREGEXMATCH関数を組み合わせてshare_linkが含まれている場合の処理を行うようにしています。
=IF(REGEXMATCH(A1,"share_link"),share_linkが含まれる場合の処理,share_linkが含まれない場合の処理)
文字列を検索・置換するSUBSTITUTE関数で画像IDの両側の不要な文字列を削除しています。
SUBSTITUTE(SUBSTITUTE(A1,"https://drive.google.com/file/d/",""),"/view?usp=share_link","")
とりあえずこれでURLから画像IDを抽出することができましたが、関数長くなるとよくわからなくなるでございます・・・。