こんにちは。
自分のためのメモということで小ネタを残しておきます。
やりたいこと
Googleスプレッドシートにデータをフィルタする機能がある。
以下のようなデータがあったとして
gmail.com だけを表示するように「条件でフィルタ」すると
こうなる。とても便利。
この「次を含むテキスト」などでフィルタするときに 複数の条件をAND条件かOR条件で指定 したい。
ついでに正規表現も使いたい。
解決策
「カスタム数式」というのを使うといけた。
=OR(REGEXMATCH(B:B, "gmail.com"), REGEXMATCH(B:B, "hotmail.com")) と指定すると「 gmail.com を含む、または、 hotmail.com を含む」という条件になる。
ちなみに B:B というのはフィルタする対象の列全体を表しているようで、 <対象の列>:<対象の列> という書き方をすれば良さそう、たぶん。
OR を AND にするとAND条件にできる。
おまけ
NOT
AND や OR があるので NOT も使える。
=OR(REGEXMATCH(B:B, "gmail.com"), NOT(REGEXMATCH(B:B, "hotmail.com"))) と指定すると「 gmail.com を含む、または、 hotmail.com を含まない」という条件になる。
正規表現
正規表現も普通に使える。
=REGEXMATCH(B:B, "^b.+@yahoo.com$") と指定すると「 b で始まって @yahoo.com で終わる」という条件になる。