4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

GoogleSpreadsheetで正規表現を使い、任意の文字をハイライトする方法

Last updated at Posted at 2016-05-27

完成したもの

スクリーンショット 2016-05-18 10.30.30.png

要件

  • ルールにマッチする文字をハイライトする
  • できれば正規表現使いたい
  • マッチルールはコード外でリスト化
  • 文章内、一致箇所のみハイライト

一致箇所のみハイライトができなかったのでもし知っている方がいたら教えてください

実装

ルールにマッチする文字をハイライト

これについては、条件付き書式設定で行った。
一般的な演算子で条件が設定できる。(==,!=,<,> 等)
凝ったことをしたい場合カスタム数式を選ぶことができる

できれば正規表現使いたい

REGEXMATCH(判定したい対象セル,正規表現)

この関数を使うことで、第二引数に与えた正規表現にマッチするかTRUE/FALSEで結果を得ることができる

マッチルールはコード外でリスト化

前項のREGEXMATCHの第二引数に入れる文字を、複数セルから生成すればおk

"("&JOIN("|", FILTER($F$1:$F$10,LEN($F$1:$F$10)))&"

コードだとこう。

FILTER($F$1:$F$10,LEN($F$1:$F$10))

この部分で、空白ではないセルのみのリストを作成している。

それを

JOINで、"|"区切りで接続している

完成したコード

REGEXMATCH(A1, "("&JOIN("|", FILTER($F$1:$F$10,LEN($F$1:$F$10)))&")")

組み合わせたこのコードを、カスタム条件分に設定すると
F1からF10の正規表現にマッチするA列のセルをハイライトすることができました!

4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?