in reply to How to print data between tags from file sequentially?
I have a text file
Are you sure it's a text file? It looks like XML (or maybe HTML?) to me. Even if just a section of a longer text file contains XML data, I would strongly recommend extracting that section of text and using a proper module to parse it (see e.g. Parsing HTML/XML with Regular Expressions for why). Mojo::DOM has a nice interface, and it handles even this case of the XML not having a root node:
use warnings; use strict; use Mojo::DOM; my $html = <<'END_HTML'; <Answer type="string">ServerName</Answer> <Answer type="string">10.10.10.11</Answer> <Answer type="string">Windows Server 2012</Answer> END_HTML # note: ->xml(1) turns on case sensitivity my $dom = Mojo::DOM->new->xml(1)->parse($html); my $values = $dom->find('Answer')->map('all_text'); print "Computer: $values->[0]\n"; print "IP Address: $values->[1]\n"; print "OS: $values->[2]\n";
Minor edits
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: How to print data between tags from file sequentially?
by marto (Cardinal) on Jun 22, 2018 at 09:17 UTC | |
|
Re^2: How to print data between tags from file sequentially?
by TonyNY (Beadle) on Jun 22, 2018 at 16:54 UTC | |
by haukex (Archbishop) on Jun 22, 2018 at 17:42 UTC | |
by TonyNY (Beadle) on Jun 22, 2018 at 18:46 UTC |