RegEx 式の作成

IBM® Cloud Logsでは、データが検索用に索引付けされる前に RegEx 式を適用することにより、構文解析ルールを使用してデータの構造を制御できます。

IBM Cloud Logs は Golangフレーバーを使用しています。 RegEx

RegEx パターンは大文字と小文字を区別する。

数量詞

数量子 (Quantifiers)
数量詞 一致
* 直前の文字またはシーケンスの 0 個以上の一致。
? 0 または 1 は、前の文字またはシーケンスと一致します。
+ 直前の文字またはシーケンスの 1 つ以上の一致。
{N} 直前の文字のちょうど N 倍に一致します。
{N,} 直前の文字の N 回以上に一致します。
{N,Z} 直前の文字の N 倍から Z 倍の間で一致します。

文字数

文字数
文字数 一致
. 任意の単一の文字に合致します。
.* すべてに一致します。
\d 1 桁の数字に一致します。
\d* N 桁に一致します。
\D 数字以外のすべての記号に一致します。
\w 任意の文字、数字、または下線に一致します。
\W 文字、数字、または下線以外のすべての文字に一致します。
\s 空白文字に一致します。
\S スペース、タブ、改行、または復帰を除く任意の文字に一致します。
\s* N 個の空白文字に一致します。
\S 空白以外の任意の文字に一致します。
\S* 空白以外の N 文字に一致します。

アンカー

Anchors (アンカー)
アンカー 一致
\b ワード境界を定義します。
^ ストリングまたは行の開始を突き合わせます。
$ 文字列または行の末尾にマッチする。

グループ化

グループ化
グループ 一致
[ ] 文字のグループを表します。
( ) パターンをグループ化するために使用します。
[abcd...] 大括弧内に含まれている文字のうちの 1 文字に一致します。
[a-z] a から z の範囲の 1 文字に一致します。
[^a-z] a から z の範囲にない 1 文字に一致します。
[....]+ 大括弧内にリストされている 1 つ以上の文字に一致します。
[....]? 大括弧内にリストされている文字の 1 文字または 0 文字に一致します。
[^"]* 二重引用符を除く N 文字に一致します。
[^"\s]* 二重引用符と空白文字を除く N 文字に一致します。
[^.]* 0 個以上の非ドットに一致します。

名前付きキャプチャー・グループ

RegEx 式で名前付き取り込みグループを使用して、ログ・レコード内の既存のデータから新規フィールドを定義できます。

キャプチャー・グループのフォーマットは以下のとおりです。

(?P<fieldName>RegularExpression)

説明

  • ?P は、キャプチャー・グループの開始を表します。

  • fieldName は、追加するフィールドの名前に設定する必要があります。

  • RegularExpression は、新規フィールドの値を定義する RegEx を表します。

    RegEx は、ログ全体と一致する必要はありません。