REGEXMATCH()
確かにはるかに遅いだけで使用するよりも、動作しますが、それは覚えておくことは難しいと、私の限られたテストによるとOR()
、このように:
=NOT(OR(N2="facebook",N2="pinterest",N2="twitter"))
250,000セルシートで、135文字列のフィルター(これは単にフィルター処理したい実際のデータです)を使用すると、REGEXMATCH()
バージョンはシートをフィルターするのに22秒OR()
かかりますが、バージョンは約3.5秒かかります。
REGEXMATCH()
確かにそれは知っても価値があるので、はるかに複雑で強力な検索を行う可能性を秘めています。
注:私の例では、最初の行にヘッダーがあると想定しているため、columnのデータへの参照N
は2番目の行(フィルターされる実際のデータが始まる場所)を参照するように設定されています。N2
(そのための上記のJohn Prattの回答に感謝します!)。ヘッダー行がない場合は、N1
代わりに使用してください。
同じ線に沿って; このバージョンのREGEXMATCH()
user79865の回答はより効率的で、シート全体で約20秒(約10%速く)かかります。これは、列全体を連結しREGEXMATCH()
て、すべての行に対してその結果にを適用しないためです。
=REGEXMATCH(N2,"(?i)facebook|pinterest|twitter")
user79865の答えとの唯一の違いは、このバージョンではのN2
代わりにN:N
(または N1
ヘッダー行がない場合)を使用することです。