haystack
内の最初の needle
の開始位置をバイトで返します。needle
が haystack
内にない場合は null を返します。カウントはゼロ()ではなく、1 から始まります。
常に、選択した言語に沿った方向でカウントされます。
主に、ラテン文字セットを使用しない言語(日本語や中国語など)で利用します。文字列またはフィード属性が、1 バイトのラテン文字セットを使用する言語(英語など)の場合、search_byte
は search と同じ値を返します。
構文
search_byte("needle", "haystack")
パラメータ
needle
と haystack
には次のいずれかを指定できます。
- 静的テキスト(「GDN」など)
- テキスト値を返す式または数式列
大文字 / 小文字の区別なし
テキストの検索では、大文字と小文字は区別されません。
空白文字
この関数に式列や数式列を含めると、式列や数式列は空白文字と評価されます。
空白文字列を検索すると、常に 1 が返されます。つまり、searchb("", "GDN")
は 1 と評価されます
例
-
search_byte("∆", "Γa∆bΘc")
は、3 番目の文字の開始位置のバイト 4 を返します。(haystack の先頭の文字は 2 バイト、2 番目の文字は 1 バイトです)。 -
search_byte("a", "Γa∆bΘc")
は、2 番目の文字の開始位置のバイトである 3 を返します。 -
search_byte("ー", "スニーカー")
は 5 を返します。これは、2 バイト文字セットでバイト数をカウントする際の最初の「ー」の位置です。 -
search_byte("", "Γa∆bΘc")
は 1 を返します。これは、この関数は空の文字列を検索しているためです。空の文字列を検索している場合は、先頭の文字が 2 バイトであっても 1 が返されます。