正規表現とメタ文字
メタ文字をエスケープする メタ文字は検索や置換の際に特別な意味を持つ記号として扱われますが、時にはメタ文字である文字そのものを検索したいことがあります。 そのような場合は、「ここではメタ文字としてではなく、この文字を検索したい」と宣言する必要があり、そのことを「エスケープする」といいます。 エスケープの方法には、1文字ずつエスケープする方法と、範囲を指定してまとめてエスケープする方法があります。 基本のメタ文字 正規表現には記号(メタ文字)がたくさんありますが、ここでは、基本中の基本といえるメタ文字をいくつかご紹介します。 頻繁に利用するメタ文字なのでぜひ覚えてください。 ※以下、赤字がメタ文字です。 <…または…> 「または」の対象が1文字の場合は、[ ]内にその候補を指定します。 「または」の対象が文字列の場合は、|で区切って指定します。 AまたはB → [AB] 赤または黄または青 → [赤黄青] テレビまたはラジオ → テレビ|ラジオ 大阪または京都または奈良 → 大阪|京都|奈良 <…から…のどれか> 対象が1文字の場合には、候補を-で範囲指定できます。 「0」から「9」のどれか → [0-9] 「あ」から「お」のどれか → [あ-お] <…以外…> 候補や範囲指定の[ ]内に、「^」を記述します。 2、4、6以外 → [^246] 「か」から「こ」以外 → [^か-こ] <文字の繰り返し> 「+」または「*」の前に指定した文字を繰り返すという意味のメタ文字です。 「+」は1回以上の繰り返し、「*」は0回以上の繰り返しを意味します。 任意の1文字を表す「.」と組み合わせて使用する「.+」や「.*」とあわせて、覚えておくと便利です。 0文字以上の任意の文字列 → .* 1文字以上の任意の文字列 → .+ ==============(”=”の連続) → =+ csvファイル(カンマ区切り)内の数字列(nullの場合あり)→ ,[0-9]*,