正規表現はコード化ストリングであり、式に一致する一連のストリングを定義します。正規表現は、1 つ以上の分岐 (選択) で構成することができます。それぞれの分岐は、文字、文字クラス、または反復規則を指定する修飾子を伴った括弧付きの式で構成されるストリングになります。
サポートされる正規表現の構文は、XML スキーマの正規表現のサブセットです。 完全な構文については、World Wide Web Consortium (W3C) Web サイトにある『XML Schema Part 2: Datatypes』の 「Appendix F」を参照してください。
次の表は、サポートされている正規表現の構文エレメントをリストしています。
メタキャラクター | 意味 |
\ | エスケープ |
. | 任意の 1 文字 |
* | 0 回以上前に付く文字 |
+ | 1 回以上前に付く文字 |
? | 0 回または 1 回前に付く文字 |
{...} | 先行文字の発生回数1 |
[...] | 含まれているクラスのうちの 1 つに一致 |
[^...] | 含まれていないクラスのうちの 1 つに一致1 |
(...) | 式のグループ化1 |
| | 先行または後続するものに一致 |
エスケープ・シーケンス | 意味 |
¥n | 改行 |
¥r | 復帰 |
¥t | タブ |
¥e | エスケープ |
クラス・コード | 意味 |
¥d | 数字 [0-9] |
¥D | 数字以外 [^0-9] 2 |
¥s | 空白文字 [ ¥t¥n¥r] |
¥S | 空白文字以外 [^ ¥t¥n¥r] 2 |
¥p{L} | すべての文字3 |
¥p{N} | すべての数字。¥d と類似4 |
[¥p{N}¥p{L}] | すべての数字と数字。¥w と類似4 |
¥P{L} | 文字以外のもの。[^¥p{L}] と同等 |
¥P{N} | 数字以外のもの。[^¥p{N}] と同等 |
範囲 | 意味 |
{n} | 正確に n 回 |
{n,} | n 回以上 |
{n,m} | n 回以上 m 回以下 |
{0,m) | ゼロ から m 回 |
次の表は、正規表現構文の構文規則の例をいくつか示しています。 使用例については、正規表現によるデータ・エレメントの構文解析を参照してください。
正規表現のデータ・パターン | 意味 |
---|---|
a | 文字 "a" に一致 |
. | 任意の 1 文字に一致 |
a+ | 1 つ以上の "a" で構成されるストリングに一致 |
a* | ゼロ個以上の "a" で構成されるストリングに一致 |
a? | ゼロ個または 1 個の "a" に一致 |
a{3} | 正確に 3 つの "a"、つまり "aaa" のストリングに一致。 |
a{3,} | 3 つ以上の "a" で構成されるストリングに一致 |
a{2,4} | 2 から 4 回 "a" が出現するストリングに一致 |
[abc] | 文字 "a"、 "b"、または "c" のいずれかに一致 |
[a-zA-Z] | 範囲 "a" から "z"、または範囲 "A" から "Z" 内の任意の 1 文字に一致。 突き合わせられる文字の範囲は、Unicode の指定文字に基づいていることに注意してください。 |
[^abc] | 文字 "a"、 "b"、または "c" のいずれをも除く任意の文字に一致 |
(ab)+ | ストリング "ab" の 1 回以上の反復に一致 |
(ab)|(cd) | ストリング "ab" または "cd" のどちらかに一致 |