ストリームデータ処理基盤 uCosminexus Stream Data Platform - Application Framework アプリケーション開発ガイド
形式
文字列関数::=<文字列関数名>'('<値式> 〔,<値式>〕…')'
機能
文字列関数は,文字列を引数とし,検索または操作した結果を返します。
オペランド
<文字列関数名>
文字列関数の名称です。文字列関数の一覧を次の表に示します。
表5-6 文字列関数の一覧
| 関数名 | 機能内容 |
|---|---|
| CONCAT関数 | 二つの引数の文字列を結合した文字列を返します。 |
| LENGTH関数 | 引数の文字列の文字数を返します。文字列にサロゲートペアが含まれている場合,サロゲートペア1文字を2文字として数えて結果を返します。 |
| LEQ関数 | 辞書的な順序で,引数の文字列が等しいかどうかを比較し,比較結果を返します。 |
| LGE関数 | 辞書的な順序で,引数の文字列が大きいかどうか,または等しいかどうかを比較し,比較結果を返します。 |
| LGT関数 | 辞書的な順序で,引数の文字列が大きいかどうかを比較し,比較結果を返します。 |
| LLE関数 | 辞書的な順序で,引数の文字列が小さいかどうか,または等しいかどうかを比較し,比較結果を返します。 |
| LLT関数 | 辞書的な順序で,引数の文字列が小さいかどうかを比較し,比較結果を返します。 |
| REGEXP_FIRSTSEARCH関数 | 引数の文字列を正規表現パターンで検索し,最初に一致した文字列を返します。 |
| REGEXP_REPLACE関数 | 引数の文字列を正規表現パターンで検索し,最初に一致した文字列を置換文字列に置き換えて返します。 |
| REGEXP_SEARCH関数 | 引数の文字列を正規表現パターンで検索し,パターンに一致する部分があるかどうかを返します。 |
| SPLENGTH関数 | 引数の文字列の文字数を返します。文字列にサロゲートペアが含まれている場合,サロゲートペア1文字を1文字として数えて結果を返します。 |
<値式>
値式については,「4.4.18 値式」を参照してください。なお,値式の個数は関数によって異なります。文字列関数の各関数の説明を参照してください。
使用例
日付データYYYY-MM-DDの固定形式であるCHAR型のS1.DATE1から年の文字列を抽出します。正規表現'^\\d\\d\\d\\d'は,先頭の数値文字列4文字を表現しています。
register query FILTER ISTREAM ( SELECT REGEXP_FIRSTSEARCH(S1.DATE1,'^\\d\\d\\d\\d') FROM S1[ROWS 10] );
S1.DATE1が2013-01-23の場合,2013を返します。
注意事項
表5-7 サロゲートペア入力時の動作
| 文字列関数名 | 文字列関数の動作 |
|---|---|
| CONCAT | ○:通常に動作します。 |
| LENGTH | ×:通常に動作しません。サロゲートペア1文字を2文字として数えて結果を返します。 |
| LEQ | ○:通常に動作します。 |
| LGE | ○:通常に動作します。 |
| LGT | ○:通常に動作します。 |
| LLE | ○:通常に動作します。 |
| LLT | ○:通常に動作します。 |
| REGEXP_FIRSTSEARCH | ○:通常に動作します。 |
| REGEXP_REPLACE | ○:通常に動作します。 |
| REGEXP_SEARCH | ○:通常に動作します。 |
| SPLENGTH | ○:通常に動作します。サロゲートペア1文字を1文字として数えて結果を返します。 |
All Rights Reserved. Copyright (C) 2010, 2014, Hitachi, Ltd.