butchie3980 has asked for the wisdom of the Perl Monks concerning the following question:
Hello all, I have a batch of data dumps that are shipped to me from another site, and I wanted to convert the data to xml. I'm using regex to grab fields, most of which are on one line, but sometimes a record will have a multiline field. I'm struggling to get this working. each record is pulled (using Tie::File) into a multi-line scalar, called $currentrecord. below is an example of the code I've tried, with sample data
if $currentrecord =~ m/^field2(.*)\nfield3/mi { $field2data = $1; }
Here's two examples of the data encountered: record 1: field1: data 1 monday field2: data 2 monday field3: data 3 monday record 2: field1: data 1 tuesday field2: data 2 tuesday tuesday details line 1 tuesday details line 2 field3: data 3 tuesday
The above approach isn't working when field2 has multiple lines. How can I catch both record styles?
UPDATE
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Regex to fix up records, some multiline fields, some not
by Athanasius (Archbishop) on Aug 20, 2013 at 09:10 UTC | |
|
Re: Regex to fix up records, some multiline fields, some not
by Eily (Monsignor) on Aug 20, 2013 at 12:37 UTC | |
|
Re: Regex to fix up records, some multiline fields, some not
by Utilitarian (Vicar) on Aug 20, 2013 at 09:13 UTC | |
|
Re: Regex to fix up records, some multiline fields, some not
by McA (Priest) on Aug 20, 2013 at 09:09 UTC |