filipebean has asked for the wisdom of the Perl Monks concerning the following question:
Hi all,
I'm using XML:Simple to read a configuration from a XML file. The code is working, but I’m facing now a problem when it read the regex that includes an xml tag. xml file below:
Config file:
<sourcetype> <name>G1</name> <desc>group 1 to decode</desc> <rules> <rule>['^\d(.)','14']</rule> <rule>['^(<xyz>)']</rule> <rule>['^(</xyz>)']</rule> </rules> </sourcetype>
Script:
my $xml = new XML::Simple( KeyAttr=>[] ); my $data = $xml->XMLin( $config_file ); foreach my $sourcetype ( @{$data->{sourcetypes}{sourcetype}} ) { print " " . $sourcetype->{name} . "\t\t" . $sourcetype->{desc} . "\ +n"; }
When I run the script it complains:
Opening and ending tag mismatch: xyz line 10 and rule Opening and ending tag mismatch: rule line 11 and rule at …/XML/LibXML/SAX.pm line 64 at …/5.8.4/XML/Simple.pm line 362
Is it possible to have regex as a tag value like “'^(<xyz>)'” and read it as a string?
Thank you in advance, Best regards.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: XML:Simple read tag value with regex
by toolic (Bishop) on May 07, 2013 at 13:04 UTC | |
|
Re: XML:Simple read tag value with regex
by mirod (Canon) on May 07, 2013 at 13:19 UTC | |
|
Re: XML:Simple read tag value with regex
by kcott (Archbishop) on May 07, 2013 at 13:34 UTC | |
by filipebean (Novice) on May 07, 2013 at 15:06 UTC |