正規表現の例

正規表現の例

正規表現とは、アプリケーションが画像内で識別するパターンを指定する正規表現文字列のことです。このセクションでは、一般的な正規表現の使用例を示し、Zebra Aurora Focus でそれらを使用する手順の概要を説明します。
次の 5 つのコードすべてがフィルタなしで読み取られています。
フィルタ (\w) は、単語に使われる任意の文字と一致します ([a-zA-Z0-9_]と同じ)。
フィルタ (\d) は、1 つ以上の数字を含むすべての画像と一致します。
フィルタ (\d0) は、後にゼロが続くすべての数値と一致します。
フィルタ (\d1) は、後に数字の「1」が続くすべての数値と一致します。
フィルタ (\d$) は、コードの最後の桁が数値であるすべてのコードと一致します。
フィルタ (^\d) は、先頭が数値の任意のコードと一致します。
フィルタ (\C) は、文字「C」を含む文字列と一致します。
フィルタ [DU] は文字のリストを使います。この例では、文字「D」または「U」です。
コード (\USB) で特定の文字列を検索します。
すべてのデータ フィルタ (\*) を検索します。
2 つの特定のプレフィックス データ フィルタを (^78|^S2) を検索します。
  • ^
    はコードの最初の文字または文字列の先頭と一致します
  • |
    は論理和の OR です
最小コード長 (.{11}) を検索します。
  • .
    は任意の文字と一致します。
  • {11}
    は結果が true となるために必要な文字の数です。すべてのオレンジ色のコードは、11 文字に満たない長さです。
(^.{3,12}$) は、一定の長さの範囲のコードを検索します。
  • 「^」アンカーはコードの先頭を表します
  • 「$」アンカーはコードの末尾を表します
波括弧内に情報を入力して、目的の出力を指定します。
  • .
    は、任意の文字と一致します。
  • {3,12}
    が true を返すためには、直前に指定したパターンが、1 番目に指定した数以上、2 番目に指定した数以下の回数を繰り返す必要があります。
2 文字以下のコードはすべて無視されます。たとえば、コード「PDF417」にある「TW」は無視されます。長さが 13 文字以上のコードも無視されます。
コードを識別子と長さの範囲で見つける場合 (^78.{3,12}$)
  • ^
    アンカーをコードの先頭を表します。
  • $
    アンカーをコードの末尾を表します。
波括弧内に情報を入力して、目的の出力を指定します。
  • .
    は、任意の文字と一致します。
  • $78
    は、文字列の先頭にある必要がある識別子です。
  • {3,12}
    が true を返すためには、直前に指定したパターンが、1 番目に指定した数以上、2 番目に指定した数以下の回数を繰り返す必要があります。
2 文字以下のコードはすべて無視されます。たとえば、コード「PDF417」にある「TW」は無視されます。長さが 13 文字以上のコードも無視されます。
他のものを探してから、コード長の範囲と識別子を探す (否定的先読み) 場合 (^(?!^78.{3,12}$)
  • ^
    は、先頭を意味します。
  • $
    は、最後を意味します。
括弧内に情報を入力して、目的の出力を指定します。
  • .
    は、任意の文字と一致します。
  • 78
    は、文字列の先頭にある必要がある識別子です。
  • {3,12}
    が true を返すためには、直前に指定したパターンが、1 番目に指定した数以上、2 番目に指定した数以下の回数を繰り返す必要があります。
構文「^(?!pattern)」を使用します。ここでは、「pattern」は否定的パターン一致 (一致しないものを探す) を表すパターンです。
(^4\d{12}|^0\d{19}) は、先頭が数字の「4」ではじまる全体の長さが 13 文字の数値コードか、先頭が数字の「0」ではじまる全体の長さが 20 文字の数値コードを検索します。
  • 「^4」の先頭にある
    ^
    は、数字の「4」をコードの最初の数字に指定するために使われています。
  • \d
    は数値のみと一致します (0 ~ 9)。
  • {12}
    は、文字数が括弧に指定した数だけ必要であることを表しています。コードの長さよりも 1 文字分少なくなっている理由は、固定された最初の数字 + 12 個の数字で構成されるためです。
  • |
    は論理和の OR です
FIS/MV Zebra Boxes (^S\d {13}) のシリアル番号フィールドを探します。
  • ^
  • \d
    は数値のみと一致します (0 ~ 9)。
  • {13}