Text type operators(テキスト型 演算子)
概要
これらの演算子は、テキスト型で利用されます。
is in
値が引数リストに含まれている場合、「yes」を返します。
is not in
値が引数リストに含まれていない場合、「yes」を返します。
… contains
この操作は、最初のエントリが引数を含むかどうかを確認します。
部分文字列は、大文字小文字を含めて正確に一致する必要があります。
単語の順序も尊重されます。
例:'the cat in the hat' に対して、以下の検索は一致します:
- ‘cat’
- ‘hat’
- ‘cat in’
- ‘cat in the’
- ‘in the hat’
- ‘at in’
- ‘cat in the hat’
しかし、'cat the hat', 'cat hat', 'Cat' などは一致しません。
この検索は、部分単語の正確な一致を返したい場合に有用です(例:'pepp' → 'peppers')。
… doesn’t contain
この操作は、最初のエントリが引数を含まないかどうかを確認します。
上記「contains」と逆の動作をします。
… contains keyword(s)
この演算子は、テキストに特定の単語が含まれているかどうかを確認します。
引数を単語ごとに分割し、「ストップワード」(the, a など短く一般的な単語)を除去し、残りの単語を検索します。
例:
以下の検索は 'the cat in the hat' に一致します:‘cat hat’, ‘cat in hat’, ‘cat in the hat’, ‘the hat cat’, ‘hat cat’。
ただし 'pepp' は 'peppers' に一致しません。
補足
Bubbleで使用される「ストップワード」は、短く一般的な単語を指します。
(参考例として挙げられているリストは一例であり、Bubble内部の完全なリストではありません。)
… doesn’t contain keyword(s)
これは上記の「contains keyword(s)」の逆動作をします。
… any field contains
この演算子は、指定された型のすべての互換フィールドで、特定の単語を含むテキストが存在するかどうかを確認します。
アルゴリズムの動作は「contains keyword(s)」と同じです。
:capitalized words
各単語の最初の文字を大文字にして返します。
例:'this is bob' → 'This Is Bob'
:uppercase
すべての文字を大文字にして返します。
例:'helLo' → 'HELLO'
:lowercase
すべての文字を小文字にして返します。
例:'HelLo' → 'hello'
:append
テキストと引数を連結して返します。
:formatted as …
テキストを特定の形式に整形します。
選択肢:
- US Phone
- URL Encoded
- MD5 Hash
:used as …
URLベースのテキストをファイルまたは画像の表現として使用します。
:trimmed
テキストの先頭と末尾の空白を削除します。
例:' fd ' → 'fd'
:number of characters
テキストの文字数を返します。
:truncated to
テキストの先頭からX文字のみを保持します。
例:"supercalifragilisticexpialidocious: truncated to 5" → "super"
:truncated from end to
テキストの末尾からX文字のみを保持します。
例:"supercalifragilisticexpialidocious: truncated from end to 5" → "cious"
:extract…
テキストから特定の部分を抽出します。
例:メールアドレスのドメイン名を抽出。
:converted to number
数値を含むテキスト値を数値型に変換します。
小数点や桁区切り記号の判定には、ユーザーのブラウザのロケール設定が適用されます。
:split by…
引数を区切り文字として使用し、元のテキストを「テキストのリスト(List of Texts)」に変換します。
区切り文字に「line_break」を指定すると、各改行が新しい項目として認識されます。
:find/replace…
動的に検索文字列と置換文字列を指定し、新しいテキストを返します。
検索と置換はテキスト全体に対して行われます。
:extract with Regex
正規表現(Regex)を使用して、テキストからエントリを抽出する高度な機能です。
例:
Regex が @\S+ で、テキストが '@one_name and @another_name' の場合、
返り値はテキストのリスト:@one_name, @another_name。
ヒント
・これは一致の完全なリストを返すため、場合によってはテキスト全体を返すこともあります。
・BubbleはJavaScriptのRegexを使用しており、PHPなど他の形式とは挙動が異なります。また、キャプチャグループはまだ利用できないため、式の調整が必要になる場合があります。
※例:次のURL https://domain.com/abc/text-that-i-want から ‘abc/’ の後の部分を抽出したい場合、
一般的には abc\/(.) を使いますが、Bubbleでは ‘abc/text-that-i-want’ 全体を返します。 そのため、ポジティブ後読みを使った (?<=abc/)(.) にする必要があります。
これで ‘text-that-i-want’ のみが返されます。
・Regexビルダーを使用して、式をBubbleに使用する前にテストすることを推奨します。
:defaulting to
元のテキストが空の場合に、デフォルト値を返します。