トップページに戻る    次の豆知識へ    前の豆知識へ

分配法則による正規表現の変形(実践編)

分配法則で正規表現を変形できる例


パターン1
ABCXYZ|ABXYZ|AXYZ
(ABC|AB|A)XYZ
A(BC|B)?XYZ
A(BC?)?XYZ

-----------------------------------------------------------------------
パターン2
ABXYZ|BXYZ
A?BXYZ

-----------------------------------------------------------------------
パターン3
AAABXYZ|BXYZ
(AAA)?BXYZ

-----------------------------------------------------------------------
パターン4
AABXYZ|AAAABXYZ
AA(AA)?BXYZ

-----------------------------------------------------------------------
パターン5
(AA)?AA|AAXYZ
AAAA|AA|AAXYZ
AA(AA|XYZ)?

別解

AA(AA)?|AAXYZ
AA((AA)?|XYZ)
AA(AA|XYZ)?

-----------------------------------------------------------------------
パターン6  Aの数が1か3か4

A|AAA|AAAA
A(AA|AAA)?
A(AAA?)?
A|A{3,4}

-----------------------------------------------------------------------
パターン7  Aの数が5か10か17か19

A{5}|A{10}|A{17}|A{19}
A{5}(A{5}|A{12}|A{14})?
A{5}(A{5}(A{7}|A{9})?)?
A{5}(A{5}(A{7}(A{2})?)?)?

-----------------------------------------------------------------------
パターン7  Aの数が5か10か15

A{5}|A{10}|A{15}
(A{5}){1,3}
A{5}(A{5})?(A{5})?
A{5}(A{5}){0,2}