Ако се интересувате какво се случва, когато използвате | оператор за редуване
, отговорът е лесен:регулярният израз обработва израза и входния низ от ляво на надясно .
Като вземем модела, който имате като пример, ^.{8}|.{12}$|.{4} започва да проверява входния низ отляво и проверява за ^.{8} - първите 8 знака. Намира ги и съвпада. След това продължава и намира последните 12 знака с .{12}$ , и отново има съвпадение. След това се съпоставят всички низове от 4 знака.

След това имате ^.{8}|.{4}|.{12}$ . Изразът отново се анализира отляво надясно, първите 8 знака се съпоставят първо, но след това ще бъдат съпоставени само поредици от 4 знака, .{12} никога няма да задейства, защото ще има .{4} съвпадения!
