Talk About Network



Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > Awk > Re: awk printf ...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 2 of 3 Topic 2209 of 2241
Post > Topic >>

Re: awk printf question

by Bill Marcum <marcumbill@[EMAIL PROTECTED] > Mar 28, 2008 at 09:51 PM

["Followup-To:" header set to comp.unix.shell.]
On 2008-03-29, sandy_eggo <cpmadrid@[EMAIL PROTECTED]
> wrote:
>
>
> [cross-post comp.lang.awk, comp.unix.shell]
>
> I have a file whose record delimiters seem to be "Directions" and
> "More" (i.e., I need the data between each, however they need to be
> joined and comma-delimited.  Kind of the inverse of csv parser.
>
> For example, given:
>
> More Info | Map | Directions
>
> Milford Pharmacy & Wellness Center
> 931 State Rte 28 Ste 205
> Milford, OH 45150-1990
> (513) 831-8211
>
> More Info | Map | Directions
>
> Alexandria Discount Drugs
> 7857 Alexandria Pike
> Alxndra, KY 41001-1045
> (859) 635-2171
>
> More Info | Map | Directions
>
> should return
>
> "Milford Pharmacy & Wellness Center","931 State Rte 28 Ste
> 205","Milford","OH",45150-1990","(513) 831-8211"
> "Alexandria Discount Drugs","7857 Alexandria
> Pike","Alxndra","KY","41001-1045","(859) 635-2171"
>
> Note--There are quotes around the city, state, and zip to create
> discreet fields.

You could use a blank line as the record separator and discard records 
beginning with "More Info".
awk -F\\n 'BEGIN{RS="";OFS="\",\""}
          /^More Info/{next}
               {$0="\"" $0 "\""; sub(/,/,"",$3);gsub(/ /,OFS,$3)} 
                {print}'




 3 Posts in Topic:
awk printf question
sandy_eggo <cpmadrid@[  2008-03-28 17:04:28 
Re: awk printf question
Bill Marcum <marcumbil  2008-03-28 21:51:06 
Re: awk printf question
Ed Morton <morton@[EMA  2008-03-28 22:24:37 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Sat May 17 7:30:49 CDT 2008.