abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 16:11 | Nová verze

    Byl vydán Mozilla Firefox 152.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 152 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 1
    včera 14:11 | Nová verze

    Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.7 (Mastodon). Přehled novinek i s videi a se snímky obrazovek v oficiálním oznámení. Podrobný přehled v seznamu změn.

    Ladislav Hagara | Komentářů: 5
    včera 11:44 | Komunita

    Hříčka xsnow, která na ploše spustí sněžení, je protestware. Pokud jste v Rusku (LANG=ru), zobrazuje ukrajinské vlajky.

    Ladislav Hagara | Komentářů: 23
    včera 11:11 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala beta verzi Ubuntu Touch 24.04-2.0. Nová verze již počítá s výřezy pro fotoaparát (notch) a zaoblenými rohy displeje. Webový prohlížeče Morph přešel z Chromia 87 na Chromium 134. Do shellu Lomiri byl přidán editor snímků obrazovky.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Komunita

    V Praze probíhá Flock 2026, tj. konference pro přispěvatele a příznivce Fedory. Přednášky lze sledovat také na YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 04:00 | Nová verze

    Node-RED (Wikipedie, GitHub), webová aplikace postavená na Node.js pro vizuální programování a propojování hardwarových zařízení, API a online služeb, byl vydán ve verzi 5.0. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    včera 02:00 | Nová verze

    Byla vydána nová verze 3.27.0 FreeRDP, tj. svobodné implementace protokolu RDP (Remote Desktop Protocol). Opraveno bylo 5 zranitelností.

    Ladislav Hagara | Komentářů: 0
    15.6. 23:11 | Komunita

    Řídící výbor GCC schválil záměr do GCC začlenit backend WebAssembly.

    Ladislav Hagara | Komentářů: 2
    14.6. 21:00 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 7.0 oznámil Linus Torvalds vydání Linuxu 7.1. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a časem také na Linux Kernel Newbies.

    Ladislav Hagara | Komentářů: 0
    14.6. 13:33 | Zajímavý software

    Cheat Engine (Wikipedie) je s verzí 7.7 k dispozici už také pro Linux. Jedná se o proprietární skener/debugger paměti používaný především k cheatování v počítačových hrách.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (16%)
     (31%)
     (3%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1918 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: Perl + XPath rovnaké tágy

    10.12.2006 22:28 dusan456 | skóre: 12 | Poprad
    Perl + XPath rovnaké tágy
    Přečteno: 288×
    Chcem použiť XPath na extraktovanie textu z XML dokumentu. Takto nejako vypadá môj aaa.xml
    <document>
    <result>
    <A>
    nieco1
    </A>
    <B>
    <text>
    nieco2
    </text>
    </B>
    <B>
    <text>
    nieco3
    </text>
    </B>
    </result>
    <result>
    ...
    </document>

    a takto nejako vypadá môj pelrový skript na extraktovanie
    use strict;
    use DBI;
    use XML::XPath;
    use XML::XPath::XMLParser;

    my $dbh = DBI->connect ("DBI:mysql:test", "root", "", { RaiseError => 1, PrintError => 0});
    my $xp = XML::XPath->new (filename => "aaa.xml");
    my $nodelist = $xp->find ("//result");
    foreach my $row ($nodelist->get_nodelist ())
    {
    $dbh->do (
    "INSERT INTO tabulka (a, b_prva, b_druha) VALUES (?,?,?)",
    undef,
    $row->find ("A")->string_value (),
    $row->find ("B/text")->string_value (),
    $row->find ("B/text")->string_value ()
    );

    }
    $dbh->disconnect ();

    Problem je v tom, že B/text je obsiahnuté dva razy v tom XML dokumente a do tabulky vloží vždy prvú hodnotu aj do druhého a aj do tretieho stĺpca. Vie niekto poradiť? Ďakujem

    Odpovědi

    10.12.2006 23:26 Petr
    Rozbalit Rozbalit vše Re: Perl + XPath rovnaké tágy
    Např. pomocí "B[1]/text" a "B[2]/text".
    10.12.2006 23:32 dusan456 | skóre: 12 | Poprad
    Rozbalit Rozbalit vše Re: Perl + XPath rovnaké tágy
    Perfektneee, dakujem.

    Ja som skusal "B/text[1]" a "B/text[2]", preto mi to nefungovalo, tak som myslel, ze v tom to nebude.
    Fuky avatar 10.12.2006 23:33 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: Perl + XPath rovnaké tágy

    use strict;
    use DBI;
    use XML::XPath;
    
    my $xp = XML::XPath->new(filename => 'soubor.xml');
    
    foreach my $row ($xp->findnodes('//result')) {
      print $row->find('A')->string_value;
    
      foreach my $row ($xp->findnodes('//result/B')) {
        print $row->find('text')->string_value;
      }
    }
    

    9.4.2009 22:39 Jezza
    Rozbalit Rozbalit vše Re: Perl + XPath rovnaké tágy

    Mam takovyto xml soubor: fi.muni.cz/~xjezek2/temp/forum.xml

     

    Chci z nej dostat urcita data a pouzivam na to upraveny skript z tohoto fora:

    use strict;
    use DBI;
    use XML::XPath;

    my $xp = XML::XPath->new(filename => 'def.xml');

    foreach my $row ($xp->findnodes('//oval_definitions/definitions/definition/metadata')) {
      print "title = ";
        print $row->find('title')->string_value;
     
        foreach my $row ($xp->findnodes('//oval_definitions/definitions/definition/metadata/affected')) {
      print "platform = ";
        print $row->find('platform')->string_value; ## jak na vice platfotm?    Jak ulozit hodnotu tagu do promente, jak vypsat atribut tagu?
       
        }
    }

     

    Potreboval bych dostat informace z tagu platform, ktery je v jedne urovni vicekrat.

    Dale bych se chtel zeptat, jak ulozit do promenne tato ziskana data misto toho, ze se tisknout...zkousel jsem to ruzne, ale pise by to chyby.

    Posledni dotaz je, lze ziska nejen hodnotu tagu, ale i jeho atributy, jako je treba i tagu <definition> comment a id?

    Predem diky

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.