REGEX - 文字列を正規表現で照合

REGEX 関数は、文字列を正規表現で照合し、一致する場合は true (1)、一致しない場合は false (0) を返します。

正規表現は、検索パターンを作成するために一連の特殊文字とリテラル文字を組み合わせたものです。

Web 上には、正規表現に関する参考情報が多く提供されています。

概要については、『ibi™ WebFOCUS® サーバ管理者ガイド』の「セキュリティ」の「正規表現の概要」を参照してください。

文字列を正規表現で照合

REGEX(string, regular_expression)

説明

string

文字

照合する文字列です。

regular_expression

文字

リテラルとメタ文字を使用して作成される正規表現です。正規表現は、一重引用符 (') で囲みます。サポートされるメタ文字には次のものがあります。

  • . - 任意の単一文字を表します。
  • * - 0 (ゼロ) 個以上の任意の文字を表します。
  • + - 1 個以上の任意の文字を表します。
  • ? - 0 (ゼロ) 個または 1 個の任意の文字を表します。
  • ^ - 行の先頭を表します。
  • $ - 行の末尾を表します。
  • [] - 大括弧で囲まれた文字セットのいずれか 1 文字を表します。
  • [^] - 大括弧で囲まれた文字セット以外の任意の 1 文字を表します。
  • | - OR 演算子を表します。
  • ¥ - エスケープ特殊文字です。
  • () - 文字シーケンスを含みます。

たとえば、正規表現の「^Ste(v|ph)en$」は、「Ste」で始まり、「ph」または「v」が続き、「en」で終わる値に一致します。

注意:出力値は数値です。

文字列を正規表現で照合

次のリクエストは、FIRSTNAME フィールドを正規表現の「'PATRIC[(I?)K]'」で照合します。

DEFINE FILE VIDEOTRK   
PNAME/I5=REGEX(FIRSTNAME,'PATRIC[(I?)K]');                   
END                                                                   
TABLE FILE VIDEOTRK  
PRINT FIRSTNAME PNAME
BY LASTNAME
WHERE LASTNAME GE 'M'
ON TABLE SET PAGE NOLEAD
ON TABLE SET STYLE *
GRID=OFF,$
ENDSTYLE
END

下図は、出力結果を示しています。