in reply to Parsing Quark file with RegEx

OK. The foreach statement structure makes more sense, but I'm still at an impass. It still gives the same result. There are actually several passes made in the regex to get all the formatting done, like so:
foreach (@FILE) { s/[0]{4}\n/<v2\.05><e1>\n\@Normal\=<Ps100t0h100z12k0b0cKf\"ArialMT\ +">\n\@Normal\=\[S\"\",\"Normal\",\"Normal\"\]<\*L\*h\"Standard\"\*kn0 +\*kt0\*ra0\*rb0\*d0\*p\(0,0,0,0,0,0,g,\"U\.S\. English\"\)>\n\@\$\:<\ +*J\*p\(9,\-9,0,9,0,0,g,\"U\.S\. English\"\)><z8f\"Helvetica\">\n/; s/^[0-9]{4}\n/<\*ra\(1,0,K,100,\-9,0,0\%\)\*p\(9,\-9,0,7,0,0,g,\"U\ +.S\. English\"\)><z2>\n<\*ra0\*p\(9,\-9,0,9,0,0,g,\"U\.S\. English\"\ +)><Bz8>/; s/^[0-9]{4}D\n/<\*ra\(1,0,K,100,\-9,0,0\%\)\*p\(9,\-9,0,7,0,0,g,\"U +\.S\. English\"\)><z2>\n<\*ra0\*p\(9,\-9,0,9,0,0,g,\"U\.S\. English\" +\)><Bz8>\n\*\*\*\*\*\*DISPLAY\*\*\*\*\*\*\n/; s/(<Bz8>)([^ ]*)/$1$2<\$>/; }
Could one of the other passes be screing something up? Could there be an invisible character between <Bz8> and the next word that is screwing it up? It does it right when it hits:
<*ra0*p(9,-9,0,9,0,0,g,"U.S. English")><Bz8> ******DISPLAY****** DRIVER OPENINGS
but:
<*ra0*p(9,-9,0,9,0,0,g,"U.S. English")><Bz8>KETTLE WORKERS F/T & P/T, +Nov.-Dec., $6.90/hr. Must be clean, honest & neat. Apply at the Salva +tion Army, 316 Pleasant St., Wmtc., wkdys., 9-6 p.m.
still screws it up.

Replies are listed 'Best First'.
Re^2: Parsing Quark file with RegEx
by TimToady (Parson) on Sep 04, 2004 at 02:15 UTC
    Could you by any chance have a tab character in your [^ ] where you think you have a space? It is right about at the 16th column, so it could be fooling you visually.
Re^2: Parsing Quark file with RegEx
by ikegami (Patriarch) on Sep 03, 2004 at 21:12 UTC