
Kyle: the trick with these is to change the expression to make it as unambiguous as possible: the exception is thrown when the regex state machine visits too many states while trying to find a match and then gives it up as a lost cause rather than risking looking indefinitely.
In this case the first (.*|\\n*) is superfluous since . can match \n as well, so the machine can "thrash" if it encounters a lot of whitespace. Using (?!System)* fixed the problem and brought the execution time down enormously.
That works for the previous input file but not the attached one (which does work with the older regex lib and original expression). Kyle begin 666 input.zip M4$L#!!0````(`"D^.C:;2I0HHP@``#EO```)````:6YP=70N='AT[5Q?;]LV M$']>@7X'(D\.YLIML:% VQ1(G*[-D'59G*P#@CS0$FMSE46-I))Z13_9'O:1 M]A5VU%_*IFG9M>0FEAX<E3J2=[^[^_%$2?WOGW][O4<;/1X^Z/702QQ)]FA$ M`L*Q)-ZKN%$=%V,JD,L\@FZQ0+D`&DX11I(QW\E%SZ- T@E!OQ,N* N>/W4> M.S\^?O;TF?/#4R64"_;'.!@1`=V15,-_H#Y!$SQ%+HX$031P&>?$E6A(QOB& M,HYPX*%;ZOO0@GPF)*(?\M'DF"0*PDB<Y!HF>KWL&0Q;CLDJQ\,'\4SQ3XR6 M8!%W20%:60.%W*WP_&Z&TX&.DY..%> )$2&&87[%@@KG\L0YX^S3%'U^^$ 9 M'0D:C-!@*B29.,<4CP) A;KBA>'R>S)T!H3?4)>HZ]\E%]-Q)?5-??IL$K* M!/(7L,(HH8^J=)/,9;YI?E/G/R:^ZDRQ3__&$D P"1UCB=-V_;>GW,K)!/./ MHO<J:;O*U?;(,4O4AZ#BSIL,=G7E4$I.AY$DG3WE@;TNVM.QW]N_+H^FX>H< MDV$T&A$^D"2\&',6C<;%<+,=R^A!7T%'H$<?%!DQ/M7T4$$R-V\)6OA'>GY$ M`P_@*7J_@R YV.NSX /EDQC&`<,AF/4NBYZ#O;&4X?->#X8-(TX=QD>]?+XP M&OK412'F$CR!7!\+@?3AT'.[MQTUWUN8H>]3L#9KSX*T\-DBOVE:Z/-V]O4A MU*%X(LV `Q20VTRO=T0JW>(KG?T7B=PE]T%*L<JA"_H*1TA^&(9*?\+1]PB\ M_P&[V".]6WU6!XO)I[T7Q<1?3&9\:\<B6(W!5/;<,7.CB8I2(L?,TZ+2$#1O MB/P)`#VE0D* G9._(B+DDCA3<@(209"E@I>"')@4AM1Q.0UC]RB5TQP`<>>4 M2DAMX-$SS&%XJ7)SZIN'*=M=[N"\YS@,B9=EA3K2F-2(*/X9$(DT(#HT@)7H M`M8\:('ANBAN."<C4'<NA-GP3UC3KJYAD1*1+P6$:!RM)\$-^PB@EQ%6,9[W M^+PX_/3I+5*)3E_V7Y1E.)$1#]!;XH= EI ,D"#R@H&M1(W;Z70,$.QW4@NN M'E_O[W<EC\C^LJQ9DOSI+">'8AJXY_'HZ A4#JJBW<V&B$?H8]\?8O<C%!3) M23?%$F%U>2#!OCG_I%C$/HGG;M(Q74U53<?-P%J*W]>!IX-J0AX7YY6C&(9- M\=)[-Q%NV4GS1'@T59JW=%B"8UF:CAF72@YY<G)LRL,5>#)W0"U):9%(=;_3 M?+J>NQHBVJU[=EN$G'JEI>75:5EY*!([3\<)#/.W4!5X-4=0RSKP[ATDN12$ M6KG*C%;3Q%&VM"6,M>NXECX,U5P:72L7"?'UI//7%WBF1&NR&+"-D>AV#PK! M#7BZT=KP#@3%=FO(=F'8P,+0+@HSBT(EFM@8^V\MR>\'KZ_JK,8(?.M^W1XU MM[2\'BV/B'P=2"JG1],3;[<)N01%DMWJ.::*L1-O9<*=!;9R2A9SWCV:M$)8 M)PUN`NU&R:N,5$M;*])6GQ-05W_-8'>X"](*/#^/0))OAR. L&L,.Z9+B[1$ M`:6A=!$`=C!2?WY6H*B,@'R,9"*S)@4:G50Y,Q-#%@O,6&,9*39Q\77=Z#G* M36T'TSH*WR(-GD :F!,K%KRZ+F=,78S;0!C4Q]IW,4#J6262G ;Z-OASR>*P M?IY66BWJ2(#LI*'%XC+T=G C^H91#^FF=[082;)^P5Y"B<1GP*N<G>D\BR4, M6P$;9<8JIM=);G4#5P\1Q5$#Q%!";]7RM!J[-$T#`Q+LT!UN[$AE<CGV*Q<$ M1QQ<QU67K"C@29/"PTX9*=";B_CJ*WFN]6(9W8[ZV*<NY.MDK#ODMWK)+W;> M_2"]/@Y<XN\8[25&E]//F$OYK8^=T'(0-Y<:)3TL`RGEZF.IU8&J]79PRS#7 M2RHIUO>#5MX0><;IA)PQ06-RW_EGN64XDI0:$#>[WZ 7TW"ME[+G8*Z<',GL M%@&ETIU\%%L%ZYH?NM;MEJ:?I,Y NBI+M:^W$*D7N^?$)?2&>,J&':+&_#TV M"QQZM;$.(5I@7K%N6,1]$&^9(<ULXE=$JV9*VR"P-;%7'EX)9RW$;!OL52EH MLI-&-[[S9Q<[N?>=6V^^RY%<M2S?TYJ'<H,W*842=6^'5T:C_IWQ^K%L8H>\ M`/3>W-CIM+J#W)'FPB(@-EF^?$4*+*Y=$OVW4K@L8)?&JI:OP;,>LDB#:;Y> M69\W-E.L+(N2[*0AVCEE[.-E>':T:]_^)VX`9Y8!Z.3MF ^FDR'SN^DK(IA? M!A[A_A0N%VW)AD>QBE]P[!$U4+8A8GY+?67^FG-3U2S+S;"):);9Q&)CK15 M8;XE[S?Q/[QT<D<UP[=;B9(Z"7QG`ZK.Y29YDVPF5K:YS'Q#[X)EJ.SP$K,> M;=2RCGR;"7^GEX;->[<)_K\/@= <I;=DKN]OZK=5IS38S6W.61"*._ TEP-9 MWNC3BK^B<4"D]/62,) @%PCLJG%GZ\>,7CSBT@GVD>?^%N'XHR:][0UG0IQQ ML%-O[;/)A H1TTO1^BY^$.D6LX-9`40NO8D'31MG:"S6LF"Q('F6>:1>^ZBR MIVL(GY7V#FS,$(.^^'K%RK+L&.MTL]ZR#[J,1S6'VH0T#]O$-)?;Q/(8L!I: M"@RK9*6E( LAJT015W5OT\]ELUDO+<<M`DGFFP6,?+!,5&<)Z[QSW+%TY)11 MS'(FGEDFJ;//,EF=DY;)%DQE1:#,7U91G=7LJ%J@G&/ 18)+2CISIZ]^YM-R MK87X6J[5)#2N;>(QWASAWH^G>?I7/+J)NUPI+T2C+9F3!2-N6O730'-TM>2> M'"VYER2T:+/(-?F!J(D.S*II)&$1:&ONMN8V"V8?'IM%ME.6MQ3>4GA);L,4 MWMRGZB8>WU(I/_]!8JS DTZ:KI%09:LI6X<8BF*M2Z<0G8<L_6/"K^XSF/I_ M4$L!`A0`% ````@`*3XZ-IM*E"BC" ``.6\```D``````````0`@```````` @`&EN<'5T+G1X=%!+!08``````0`!`#<```#*" `````` ` end