Schrift
[thread]167[/thread]

XML mit Perl auslesen: Kann Perl xml Dokumente auslesen und ...

Leser: 3


<< |< 1 2 >| >> 15 Einträge, 2 Seiten
janek
 2004-02-12 20:14
#1188 #1188
User since
2004-02-02
17 Artikel
BenutzerIn
[default_avatar]
Kann Perl xml Dokumente auslesen und bestimmte einträge aus der datei wieder an den Browser zurückgeben?

Hat jemand eine Anleitung zum Auslesen von XML Datein?

Ich brauche nur etwas Inspiration und den Rest bekomme ich selber hin, denke ich.

Aus den perl-docs wurde ich nicht ganz schlau. Ich habe mir einige Module angeschaut die dem Namen nach etwas mit xml's machen sollen, tja nur leider was? ???

pace janek
KKO
 2004-02-12 20:48
#1189 #1189
User since
2003-11-05
124 Artikel
BenutzerIn

user image
hallo,
na klar.... xml-dateien sind text-dateien und sehen html-dateien aufgrund der tags/ende-tags ziemlich ähnlich. in diesen tags steht der inhalt, zb.:
$line="<HEADLINE>Überschrift zu einem Artikel</HEADLINE>";

und so könntest du den inhalt für headline filtern:
if ($line =~ /headline/i){
$line=~ /\>(.*)\</;
$inhalt=$1;
}
Gruß
KKO
renee
 2004-02-12 21:37
#1190 #1190
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Ähhmm... Ich würde eher von dem eigenen parsen "warnen". Warum sollte man auch das Rad neu erfinden, wenn es doch schon XML::Simple gibt. Damit kannst Du ganz einfach XML-Dokumente auslesen!
Code: (dl )
1
2
3
4
5
use XML::Simple;
use Data::Dumper;

my $hash_ref = XMLin($xml_file);
print Dumper($hash_ref);


Dabei lohnt es sich auch Data::Dumper zu benutzen, um die Datenstruktur zu verstehen...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
KKO
 2004-02-12 22:22
#1191 #1191
User since
2003-11-05
124 Artikel
BenutzerIn

user image
öhm......... ich möchte keine grundsatzdebatte ( ich nutze auch module )
bevor ich mich aber durch die SYNOPSIS wühle, um etwas einer text-datei rauszuholen, mache ich es lieber so :-))
janek wollte eine insperation, was auf einen kreativen selfmade schließen läßt
Gruß
KKO
format_c
 2004-02-12 22:47
#1192 #1192
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Halt dich an renees Rat und benutz XML::Simple. Ist das beste und einfachste Modul dass ich kenne. Wenn man sich etwas damit auseinandergesetzt hat ist das, versteht man schnell wie es funktioniert.
Vielleicht will er ja bald nicht mehr nur lesen sondern vielleicht auch schreiben.

Wenn KKO dann seinen eigenen gescheiten XML-Parser schreibt; Hut ab.

Gruß Alex
pq
 2004-02-13 01:18
#1193 #1193
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
also für den anfang ist XML::Simple echt das beste und idiotensicherste,
was es gibt. und das hier (aus den ersten drei zeilen der synopsis):
          use XML::Simple;
          my $ref = XMLin([<xml file or string>] [, <options>]);
          my $xml = XMLout($hashref [, <options>]);

scheint mir einfacher als selbst zu parsen...
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
renee
 2004-02-13 08:03
#1194 #1194
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Für das eigene parsen ist es auch relativ kompliziert, die Struktur des XML zu speichern. XML-Files bestehen ja nicht nur aus den Tags, sondern es gibt eine gewisse Struktur...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
havi
 2004-02-13 08:40
#1195 #1195
User since
2003-08-04
2036 Artikel
BenutzerIn
[Homepage]
user image
@KKO: Du solltest auch renees Rat befolgen...

Gruss
Ishka
 2004-02-13 18:33
#1196 #1196
User since
2003-08-04
771 Artikel
HausmeisterIn
[Homepage] [default_avatar]
[quote=KKO,12.02.2004, 21:22]öhm......... ich möchte keine grundsatzdebatte ( ich nutze auch module )
bevor ich mich aber durch die SYNOPSIS wühle, um etwas einer text-datei rauszuholen, mache ich es lieber so :-))
janek wollte eine insperation, was auf einen kreativen selfmade schließen läßt[/quote]
Eine Inspration zu wollen kann auch heißen, daß man nicht weiß, daß es schon Module für soetwas gibt. (Ich hab mir am Anfang auch lieber alles selbst geschrieben, im Lauf der Zeit aber festgestellt, daß es geschickter ist Module zu verwenden)
sub z{if(@_){1while$x[$k=rand 10];t($t=$x[$k]=1)}print map"$z[$x[$_]]$_".($_%3?
"":"\n"),1..9}sub t{$j=0;$x[$_+1]==$t&&($j+=2**$_)for 0..8;z,die"Gewinner $z[$t]
"if grep$_==($j&$_),7,56,73,84,146,273,292,448;z,die"Gleichstand\n"if@x>9&&!grep
!$_,@x}@x=4;@z=qw{. [ (};z$^T&1;while(<>){next if$_>9||$x[$_];t$t=$x[$_]=2;z 1}
KKO
 2004-02-13 19:29
#1197 #1197
User since
2003-11-05
124 Artikel
BenutzerIn

user image
ja...ja.. ist ja schon gut :D
jetzt ist janek zum glück bestens inspiriert
Gruß
KKO
<< |< 1 2 >| >> 15 Einträge, 2 Seiten



View all threads created 2004-02-12 20:14.