Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change

Re^2: parse array to replace specific spaces with pipes

by neurotoxx (Novice)
on Jul 12, 2009 at 21:23 UTC ( #779414=note: print w/replies, xml ) Need Help??

in reply to Re: parse array to replace specific spaces with pipes
in thread parse array to replace specific spaces with pipes

Thanks. The regex expressions work great. However, I have a couple more issues with the data. For example, I would like to replace only the spaces after the first element and before the last element. I need to keep the spaces that are part of the last name. For example:

0211121253 Mike Dell ID06533 0211121253 Leo De Vinci ID02014 0211121253 Joe De La Marco ID65255

Should look like this:

0211121253|Mike|Dell|ID06533 0211121253|Leo|De Vinci|ID02014 0211121253|Joe|De La Marco|ID65255

Also, I would like it to delete any lines that are missing field elements.

0211121253|Mike|Dell|ID06533 Missing data|Leo|De Vinci|ID02014 <--delete line 0211121253|Joe|De La Marco|ID65255

I have been trying to create a regex that keys on "ID" and replaces the space before it. I've been trying these:

$_ =~\b\sID\d; $_ =~^\d+;

But these expressions replace instead of add the pipe.

I would really appreciate a way to add the pipes and not replace the search value in the regex.

Thank you so much for your help,


Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://779414]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (10)
As of 2016-10-27 11:28 GMT
Find Nodes?
    Voting Booth?
    How many different varieties (color, size, etc) of socks do you have in your sock drawer?

    Results (360 votes). Check out past polls.