正規表現
正規表現は、テキスト データでパターンを認識する場合に使用されます。正規表現によってテキスト データが評価され、式とドキュメント内のテキストの一致が検索されます。Kofax TotalAgility では、正規表現は形式ロケータ、検証メソッド、およびフォーマッタで使用されて、ドキュメント上のアイテムを識別および標準化します。
正規表現はデータを抽象的な方法で記述します。次の表に、いくつかの一般的な例を示します。
フォーマット | 説明 | 例 | 一致する | 一致しない |
---|---|---|---|---|
C |
1 文字 |
a |
a |
b、A |
.(ピリオド) |
任意の文字 |
b.g |
bug、bag、big、bbg |
bg、baag |
\d |
任意の 1 桁の数字 |
a\d |
a5、a8、a0 |
aA、ab、a |
c1c2c3 |
集合内の 1 文字 |
[abc] |
a、b、c |
1、2、d、D、A、ab、bc |
[c1-cn] |
範囲内の 1 文字 |
[a-z] |
b、g、x |
1、2、D、A |
? (疑問符) |
前の条件は省略可能 |
x\d? |
x、x7、x1 |
xx、xq |
+ (プラス記号) |
前の条件を 1 回以上繰り返すことができる |
\d+ |
4、2323、100 |
A112、2b、X |
* (アスタリスク) |
前の条件を 0 回以上繰り返すことができる |
x\d* |
x6、x、x100 |
100x、xx |
{n} |
前の条件を n 回だけ繰り返すことができる |
y{3} |
yyy |
yy、yyyy |
{m, n} |
前の条件を m 回から n 回まで繰り返すことができる |
\d{5,9} |
12345、999999999 |
1234、999999999999 |
\ |
特殊文字をエスケープする |
\$ \\ \- \? \. |
$ \ - ? . |
!% |
() |
文字をグループ化する |
a(\$\$)?b |
a$$b、ab |
a$b、a$$ |
(e1|e2) |
選択肢 |
(abc|ABC) |
abc、ABC |
aBC、AbC |
\n |
後方参照 (丸かっこ内の n 番目の一致項目が再度一致する必要がある) |
(\d)x\1 |
1x1、2x2、3x3、4x4... |
1x2、6x7... |
正規表現については、インターネット上でサードパーティから多くの情報が提供されています。ただし、通常は、正規表現に関する豊富な知識は必要ありません。Kofax TotalAgility には、一般に使用される事前定義済みのテンプレート セットが用意されています。
形式ロケータの場合は、正規表現内で辞書を使用することもできます。辞書の名前がわかっている場合は、辞書名として 「[§ + 辞書名 + §]」 を入力して、形式ロケータの入力ボックスを直接編集できます。キーボードにこのような記号はないので、これを生成するには、Alt キーを押しながら 0167 と入力します。
いずれかのドキュメントに特殊な ASCII 文字が含まれていて、これらを検索および抽出する必要がある場合は、ASCII 文字の正規表現コードを使用できます。次の表に、変換要件を示します。
ASCII 16 進数 |
特殊文字 |
正規表現コード |
---|---|---|
21 |
! |
\x21 |
22 |
" |
\x22 |
23 |
# |
\x23 |
24 |
$ |
\x24 |
25 |
% |
\x25 |
26 |
& |
\x26 |
27 |
' |
\x27 |
28 |
( |
\x28 |
29 |
) |
\x29 |
2A |
* |
\x2A |
2B |
+ |
\x2B |
5E |
^ |
\x5E |
A7 |
§ |
\xA7 |
たとえば、\x2A を 1 回入力すれば、1 文字との一致を検索できます。この場合は、アスタリスク (*) を入力したことになります。また、これらの文字を範囲として使用できます。たとえば、[\x21-\x29] と入力すれば、!"#$%&'() の中のいずれかの文字を検索できます。