第24話 SPLIT関数 応用編

「グォオオオオオオオオ!!!!」


 スライムから犬に変身したSPLIT関数が唸り声をあげる。イノウエは一瞬の迷いもなくシートの出口にむかって走っていった。やばそうだったのでおれも続いて部屋を出た。関数はシートの外まで追ってくることはない。



(※今回はぜひお手元のSpreadsheetsで結果を確認しながら読んでみてください)



「はぁ…はぁ…、やってくれましたね…」


「すいません、そんなに難しくなかったものでいけるかと思って…」


「さっきの話はあくまで基本なんですよ」


 そういってイノウエは外の壁に書いて説明をはじめた。外も書けるのかと感心したがイノウエが小さく「あ、やべっ。ま、いっか」って言ったのでおそらく書いてはいけないところだったらしい。


=SPLIT(テキスト, 区切り文字, [各文字での分割], [空のテキストを削除])


「さっきの説明はあくまで基本で、オプションが2つあるんです。正直そこまで見かけないので大丈夫かなと思って私も楽観してたんです。どちらのオプションもTRUE/FALSEを入力できて、なにも書かないとTRUE扱いになっています」


「空のテキストを削除のほうはなんとなくわかるような気がします。区切り文字が2つ続いていたときにその間の空白を出力するか、それともしないかですか?」


「そうそう。例えばこんな感じです」


=SPLIT("ポプテピピック", "ピ", TRUE, FALSE)


 ポプテ (空白) ック


「オプションを指定しなかったら『ポプテ』と『ック』に分かれるのですが、[空のテキストを削除]にFALSEを指定しておくと、『ピピ』の間に空白があるとみなして3つのセルに間の空白を含めて出力される、というわけですね」


「なるほど、わかりました。もうひとつの[各文字での分割]ってのはなんですか?さっぱりわからないのですが」


「これがややこしいんですよね。その前にまずSPLITの基本的な挙動について教えます。タカハシさん、この実行結果どうなると思いますか?」


=SPLIT("鹿児島県志布志市志布志町志布志2丁目1−1 志布志市役所志布志支所", "志布")


「や、ややこしいな。書いていいですか?」


「あ…まぁはい大丈夫です」


 やはり本当は書いてはいけなかったらしい。しかし口頭では無理だったので書いた。


 鹿児島県 志市 志町 志2丁目1−1 志市役所 志支所


「こうですよね?」


「それが実は違うんです。正解はこう」


 鹿児島県 市 町 2丁目1−1 市役所 支所


「へ?なんで志がなくなっちゃうんですか?志布で区切るはずでは?」


「実は、デフォルトのSPLITの挙動は違うんです。で区切るのではなくてで区切るんです。[空のテキストを削除]をFALSEにしてみるとわかりやすいかもしれません」


=SPLIT("鹿児島県志布志市志布志町志布志2丁目1−1 志布志市役所志布志支所", "志布", TRUE, FALSE)


 鹿児島県 (空白) (空白) 市 (空白) (空白) 町 (空白) (空白) 2丁目1−1 (空白) (空白) 市役所 (空白) (空白) 支所


「わかりました?[各文字での分割]っていうのは志布をに分けてどちらかで区切る機能で、それが書かないとTRUEになるんです。なのでというまとまりで区切りたいときは、これをFALSEにしないといけないのです」


=SPLIT("鹿児島県志布志市志布志町志布志2丁目1−1 志布志市役所志布志支所", "志布", FALSE)


「と書いておけば、最初にタカハシさんが書いたとおりの結果になります」


 鹿児島県 志市 志町 志2丁目1−1 志市役所 志支所


「あー、なるほど、理解しました。なんか直感的じゃないですね、SPLIT関数」


「正直そうだとは思うんですが、私たちの仕事はこの関数の使い方を理解して処理することですからね。さて理解してもらったところで処理しにいきましょうか。これ、つけてください」


 イノウエが差し出したのは、警察犬の訓練をするときに訓練してる人が腕にはめてる肘まであるプロテクターみたいなやつだった。




 その後のおれたちの戦いはファンタジー要素のかけらもない極めて地味なものだった。おれは逃げながらSPLIT関数に腕を噛まれ続けた。正直プロテクターで牙は刺さらないものの、大型犬に噛みつかれて引っ張り回されると肩から腕にかけて全体が痛い。イノウエがその隙に処理する作戦だったが、暴れるSPLITに手こずりしばらく腕を噛まれて振り回され続けた。その間ずっと「痛い痛い」と騒いでいた。


 やっとのことで処理したと思ったら3匹の小型犬に分裂してしまった。おれとイノウエは手足をばたつかせて威嚇し、プロテクターごしの腕を噛みつかれながらなんとか分裂体も処理した。地味ながらも体力的にむちゃくちゃきついクエストだった。



 *********

 リファレンスはこちら。

 https://support.google.com/docs/answer/3094136?hl=ja


 実は僕自信もこのオプション使ったことがありませんでした。カンマとかわかりやすい記号で区切ることばかりなので。

  • Xで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る