メイン コンテンツをスキップする 補完的コンテンツへスキップ

正規表現

正規表現(regex)は、複雑なパターンの一致を可能にする高度な検索文字列です。

このドキュメントでは、カテゴリー別に正規表現のエレメントが分類されています。

例ではすべて以下の2行を使用しています:

Comment from happy_user@company.com (04-Apr-2016):

I love working with Talend! It really helps me with all my daily tasks!

正規表現の例

正規表現 マッチング
\bTa Talend
\bw\w* working, with
\w+n\b プレパレーション
Talend\s\w+\s\w+ Talend Data Preparation
task(s?) tasks("task"とも一致します)
\w+@\w+.com happy_user@company.com
\d{2}-.*-\d+ 04-Apr-2016

アンカー

文字 マッチング
^ 文字列の最初、または複数行パターンの行の最初 ^Commentは行頭の"Comment"と一致します。

^C.*は最初の行と一致します。

$ 文字列の最後、または複数行パターンの行の最後 !$は最後のエクスクラメーションマークと一致します。
\b 語境界 \bwoは"working"の"wo"と一致します。

\bwo\w+は"working"と一致します。

ng\bは"working"の"ng"と一致します。

\w+ng\bは"working"と一致します。

\B 語境界ではない \Bhは"with"のような末尾の"h"ではなく"helps"または"happy"のような先頭の"h"と一致します。

h\Bは"helps"または"happy"のような先頭の"h"ではなく"with"のような末尾の"h"と一致します。

文字クラス

文字 マッチング
新しい行(\n)以外の任意の文字 .は、復帰改行以外のテキストの全文字と一致します。
\s ホワイトスペース Talend\sDataは「Talend Data」に一致します。

Data\s+Preparationは"Data Preparation"に一致します。

\S ホワイトスペースではない \Sは文中のスペースを除くすべての文字と一致します。
\d 数字 \d{4}は"2016"と一致します。
\選 数字ではない \Dはテキスト内の数字ではなく、すべての文字と一致します。
\w 単語の文字とアンダースコア T\w+は"Talend"に一致します。
\W 語ではない company\Wcom は"company.com"と一致します。
\n 新しい行 .*\n.*は全体のテキストと一致します。

エスケープ文字

文字 マッチング
\.
\\ \
\+ +
\* *
\? ?
\$ $
\[ [
\] ]
\{ {
\} }
\( (
\) )
\| |
\/ /

グループと範囲

文字

マッチング

() Group (グループ) m (e|y)は"me"と"my"と一致します。
(a|b) aまたはb m(e|y)は"me" ("Comment"内)、"me"、"my"と一致します。
[abc] 範囲(aまたはbまたはc) m(ey)は"me" ("Comment”内)、"me"と"my"と一致します。
[a-q] aからqまでの文字 m(a-m)は"me" ("Comment”内)と"me"と一致しますが、"my"には一致しません。
[0-7] 0から7までの数字 201[0-5]は”2016”には一致しませんが、"2010"から"2015"までのすべての年と一致します。

グループでキャプチャーされた表現は、$記号を使って再使用できます。複数のグループをキャプチャーした場合は、数値を$記号に追加することで、キャプチャーされた順序に対応するようにします。

たとえば、正規表現Y(\d{2})Q(\d{2})で一致する式Y16Q02を再作成する必要があるとします。この場合、取り込んだ文字を保持しておくだけで、元の式を再作成できます。新しい正規表現をQuarter 02 of year 2016 (2017年第2四半期)とする場合、新しい正規表現Quarter $2 of year 20$1がこれと一致します。

数量詞

文字 マッチング
* 0以上 work\w*は"working"に一致し、"work"と"works"にも一致します。
+ 1以上 work\w+とすると"working"だけでなく"works"にも一致します。ただし、"work"とは一致しません。
? 0または1 work(s?)は"work"と"works"と一致しますが、"working"には一致しません。
{3} ぴったり3 20\d{2}は”2016”や”2000”から”2099”の間の他の番号と一致します。
{3,} 3以上 20\d{2,}は”2016”や"20"で始まる”2000”以上の数字と一致します。
{3,5} 3、4、5のいずれか 20{1,2}は"2016"、および"200"から"2099"までのすべての数値と一致します。
[0-7] 0から7までの数字 201[0-9]は"2016"、および"2010"から"2019"までのすべての数値と一致します。

このページは役に立ちましたか?

このページまたはコンテンツにタイポ、ステップの省略、技術的エラーなどの問題が見つかった場合はお知らせください。