文字列検索と分節化規則で使用する正規表現は、Java がサポートしているものです。より詳細な情報については Java の正規表現に関する技術文書を参照してください。以下の構文一覧と使用例も参照してください。
注記
この章は上級者のユーザーを対象にしています。独自の分節化規則を定義したり、こみいった条件での検索を必要とする場合に、参照してください。
表D.1 正規表現 - フラグ
| 構文 |
一致対象 |
| (?i) |
大文字と小文字を区別しない一致を有効にします(デフォルトでは大文字と小文字を区別します) |
表D.2 正規表現 - 文字
| 構文 |
一致対象 |
| x |
文字 x(以下に示すもの以外) |
| \uhhhh |
16 進値 0xhhhh を持つ文字 |
| \t |
タブ文字('\u0009') |
| \n |
改行(ラインフィード、LF)文字('\u000A') |
| \r |
キャリッジリターン(CR)文字('\u000D') |
| \f |
用紙送り文字('\u000C') |
| \a |
警告 (ベル) 文字('\u0007') |
| \e |
エスケープ文字('\u001B') |
| \cx |
x に対応する制御文字 |
| \0n |
8 進値 0n を持つ文字(0 <= n <= 7) |
| \0nn |
8 進値 0nn を持つ文字(0 <= n <= 7) |
| \0mnn |
8 進値 0mnn を持つ文字(0 <= m <= 3、0 <= n <= 7) |
| \xhh |
16 進値 0xhh を持つ文字 |
表D.3 正規表現 - 引用
| 構文 |
一致対象 |
| \ |
次の文字をエスケープします。以下のメタ文字(!$()*+.<>?[\]^{|})自体を一致対象としたい場合に入力が必要です |
| \\ |
たとえば、この構文ではバックスラッシュ文字を表します |
| \Q |
\E までのすべての文字をエスケープします |
| \E |
\Q で開始された引用をエスケープします |
表D.4 正規表現 - Unicode ブロックとカテゴリのクラス
| 構文 |
一致対象 |
| \p{InGreek} |
ギリシャ語ブロックの文字(単純 ブロック) |
| \p{Lu} |
大文字(単純 カテゴリ) |
| \p{Sc} |
通貨記号 |
| \P{InGreek} |
ギリシャ語ブロック以外の文字(否定) |
| [\p{L}&&[^\p{Lu}]] |
大文字以外の文字(減算) |
表D.5 正規表現 - 文字クラス
| 構文 |
一致対象 |
| [abc] |
a、b または c(単純クラス) |
| [^abc] |
a、b、c 以外の文字(否定) |
| [a-zA-Z] |
a 〜 z または A から Z(範囲) |
表D.6 正規表現 - 定義済みの文字クラス
| 構文 |
一致対象 |
| |
任意の文字(行末記号を除く) |
| \d |
数字:[0-9] |
| \D |
数字以外:[^0-9] |
| \s |
空白文字:[ \t\n\x0B\f\r] |
| \S |
非空白文字:[^\s] |
| \w |
単語構成文字:[a-zA-Z_0-9] |
| \W |
非単語文字:[^\w] |
表D.7 正規表現 - 境界正規表現エンジン
| 構文 |
一致対象 |
| ^ |
行の先頭 |
| $ |
行の末尾 |
| \b |
単語境界 |
| \B |
非単語境界 |
表D.8 正規表現 - 最長一致数量子
| 構文 |
一致対象 |
| X
?
|
X、1 または 0 回 |
| X
*
|
X、0 回以上 |
| X
+
|
X、1 回以上 |
注記
最長一致数量子は、指定した文字となるべく多い文字数で一致します。たとえば
a+
は文字列
aaabbb
にあるaaaと一致します。
表D.9 正規表現 - 最短一致数量子
| 構文 |
一致対象 |
| X?? |
X、1 または 0 回 |
| X*? |
X、0 回以上 |
| X+? |
X、1 回以上 |
注記
最短一致数量子は、指定した文字となるべく少ない文字数で一致します。たとえば
a+?
は文字列
aaabbb
にある最初の
a
と一致します。
表D.10 正規表現 - 論理演算子
| 構文 |
一致対象 |
| XY |
X の直後に Y |
| X|Y |
X または Y |
| (XY) |
XY を 1 つのグループとして扱います |