## 正規表現における構文

文字列検索と分節化規則で使用する正規表現は、Javaがサポートしているものです。より詳細な情報については http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/util/regex/Pattern.html を参照してください。以下の構文一覧と使用例も参照してください。

### フラグ

### 文字

### 引用

### Unicode ブロックとカテゴリのクラス

### 文字クラス

### 定義済みの文字クラス

### 境界正規表現エンジン

### 最長一致数量子

### 最短一致数量子

### 論理演算子

### 正規表現関連ツールとその使用例

### 構文

### 一致対象

### フラグ

`(?i)` | 大文字と小文字を区別しない一致を有効にします。（デフォルトでは大文字と小文字を区別します）

### 文字

`x` | 文字 x（以下に示すもの以外）
`\uhhhh` | 16 進値 `0x` hhhh を持つ文字
`\t` | タブ文字（`'\u0009'`）
`\n` | 改行（ラインフィード、LF）文字（`'\u000A'`）
`\r` | キャリッジリターン（CR）文字（`'\u000D'`）
`\f` | 用紙送り文字（`'\u000C'`）
`\a` | 警告 (ベル) 文字（`'\u0007'`）
`\e` | エスケープ文字（`'\u001B'`）
`\c` x | x に対応する制御文字
`\0` n | 8 進値 `0` n を持つ文字（0 `<=` n `<=` 7）
`\0` nn | 8 進値 `0` nn を持つ文字（0 `<=` n `<=` 7）
`\0` mnn | 8 進値 `0` mnn を持つ文字（0 `<=` m <tc4><= 3、0 `<=` n `<=` 7）
`\x` hh | 16 進値 `0x` hh を持つ文字

### 引用

`\` | 次の文字をエスケープします。以下のメタ文字（`!$()*+.<>?[\]^{|}`）それ自身を一致対象とさせたい場合に入力が必要です
`\\` | 例えば、この構文ではバックスラッシュ文字を表します
`\Q` | `\E` までのすべての文字をエスケープします
`\E` | `\Q` で開始された引用をエスケープします

### Unicode ブロックとカテゴリのクラス

``\p{InGreek}`` | ギリシャ語ブロックの文字（単純 ブロック）
``\p{Lu}`` | 大文字（単純 カテゴリ）
``\p{Sc}`` | 通貨記号
``\P{InGreek}`` | ギリシャ語ブロック以外の文字（否定）
``[\p{L}&&[^\p{Lu}]]`` | 大文字以外の文字（減算）

### 文字クラス

`[abc]` | `a`、`b` または `c`（単純クラス）
`[^abc]` | `a`、`b`、`c` 以外の文字（否定）
`[a-zA-Z]` | `a` 〜 `z` または `A` から `Z`（範囲）

### 定義済みの文字クラス

`.` | 任意の文字（行末記号を除く）
`\d` | 数字： `[0-9]`
`\D` | 数字以外： `[^0-9]`
`\s` | 空白文字： `[ \t\n\x0B\f\r]`
`\S` | 非空白文字： `[^\s]`
`\w` | 単語構成文字： `[a-zA-Z_0-9]`
`\W` | 非単語文字： `[^\w]`

### 境界正規表現エンジン

`^` | 行の先頭
`$` | 行の末尾
`\b` | 単語境界
`\B` | 非単語境界

### 最長一致数量子

指定した文字となるべく多い文字数で一致します。例えば `a+` は文字列 `aaabbb` にある `aaa` と一致します。
X`?` | X、1 または 0 回
X`*` | X、0 回以上
X`+` | X、1 回以上

### 最短一致数量子

指定した文字となるべく少ない文字数で一致します。例えば `a+?` は文字列 `aaabbb` にある最初の `a` と一致します。
X`??` | X、1 または 0 回
X`*?` | X、0 回以上
X`+?` | X、1 回以上

### 論理演算子

XY | X の直後に Y
X`|`Y | X または Y
`(`XY`)` | XY を 1 つのグループとして扱います

## 正規表現関連ツールとその使用例

正規表現の実行やテストを行える、対話式のツールが数多くあります。それらのツールは、ほぼ同じ構文に従っています。正規表現がテキストを解析し、にその検索結果を表示しています。

正規表現の便利な構文例は、OmegaT 自体にも含まれています。（［設定］→［分節化規則...］ を参照してください）以下は、特に翻訳メモリを検索する場合に便利な正規表現の一覧です：

正規表現 | 以下に一致します：
(\b\w+\b)\s\1\b | 重複している単語
[\.,]\s*[\.,]+ | カンマとピリオドが連続している箇所
\. \s$ | 末尾がピリオドで終わる文章の後の、余分な空白
\s+a\s+[aeiou] | 英語：母音で始まる単語の前に "an" でなく "a" がある箇所
\s+an\s+[^aeiou] | 英語：子音で始まる単語の前に "a" でなく "an" がある箇所
\s\s+ | 2 個以上の空白
\.[A-Z] | ピリオドと次の文章の間に空白がない箇所

法律上の表示 | ホーム | 索引