- カテゴリ:
REGEXP_COUNT¶
文字列で:doc:`パターン</sql-reference/functions-regexp>`が発生する回数を返します。
構文¶
引数¶
必須:
subject一致を検索する文字列です。
pattern一致するパターンです。
パターンの指定に関するガイドラインについては、 文字列関数(正規表現) をご参照ください。
オプション:
position関数が一致の検索を開始する文字列の先頭からの文字数です。値は正の整数にする必要があります。
デフォルト:
1(一致の検索は左側の最初の文字から始まります)parameters一致の検索に使用されるパラメーターを指定する1つ以上の文字の文字列です。サポートされている値:
パラメーター
説明
c大文字と小文字を区別する一致
i大文字と小文字を区別しない一致
m複数行モード
e部分一致を抽出
s単一行モード POSIX ワイルドカード文字
.一致\nデフォルト:
c詳細については、 正規表現のパラメーターの指定 をご参照ください。
戻り値¶
NUMBER 型の値を返します。いずれかの引数が NULL の場合は NULL を返します。
使用上の注意¶
正規表現関数については、 一般的な使用上の注意 をご参照ください。
照合順序の詳細¶
Arguments with collation specifications currently aren't supported.
例¶
次の例では、単語 was の出現をカウントします。\b 単語の境界を示すメタ文字を使用することができます。次の例では、一致は文字列の1番目の文字 w から始まり、文字列の最後の文字``s`` で終わるため、その文字列( washing)を含む単語には一致しません:
次の例では、文字``e``の大文字と小文字を区別しない一致のための``i`` パラメーターを使用します:
次の例は、出現の重複を示しています。テーブルを作成してデータを挿入します。
REGEXP_COUNT を使用するクエリを実行して各行で以下のパターンが見つかった回数をカウントします。句読点の後に数字と文字が続き、その後に句読点が続きます。
残りの例では、以下のテーブルデータを使用します。
次のクエリは、区切り文字(,)を検索し、合計に1を加算することで、各日のメッセージ総数を返します:
エラーは常に ER で始まり、ハイフンと4桁の数字が続くと仮定します。次のクエリは、毎日のエラーの数をカウントします。