in reply to Re: Parsing Quark file with RegEx
in thread Parsing Quark file with RegEx

Maybe you need s/.../.../g instead of s/.../.../ to replace all instances in the line, instead of just the first?

Tip: In the expression in the second half of s///, you only need to escape $, @, \ and / (or whatever your seperator is). For example:

s/[0]{4}\n/<v2\.05><e1>\n\@Normal\=<Ps100t0h100z12k0b0cKf\"ArialMT\">\ +n\@Normal\=\[S\"\",\"Normal\",\"Normal\"\]<\*L\*h\"Standard\"\*kn0\*k +t0\*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/;

and

s/[0]{4}\n/<v2.05><e1>\n\@Normal=<Ps100t0h100z12k0b0cKf"ArialMT">\n\@N +ormal=[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/;

are equivalent.

Replies are listed 'Best First'.
Re^3: Parsing Quark file with RegEx
by rael9 (Novice) on Sep 03, 2004 at 21:15 UTC
    I tried it with the 'g' as well and still no go. I just don't get it. Thanks for the tip, by the way. I found that out while reading more about perl regex today, but that part was working, so I didn't want to mess around with it. I have a headache as it is ;)
      You need to provide input that fails. The input that you said failed, doesn't:
      @FILE = ( '<*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 Salvation Army, 316 Pleasant St., Wmtc., wkdys., 9-6 p.m.' ); 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/g; 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>/g; 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/g; s/(<Bz8>)([^ ]*)/$1$2<\$>/g; } print(@FILE); __END__ output ====== <*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 Sa +lvation Army, 316 Pleasant St., Wmtc., wkdys., 9-6 p.m.