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í
×

    dnes 15:22 | Humor

    Je tu opět apríl. Společnost Razer představila holící myš Razer Razer. Vědci z CERNu navrhují 25hodinový den. Společnost Elgato představila kolekci Elgato Home. Společnost Nothing Beer (5.1%). Další aprílové novinky například na April Fools' Day On The Web.

    Ladislav Hagara | Komentářů: 0
    dnes 12:55 | Komunita

    Před 25 lety byl uvolněn zdrojový kód balíku aplikací Netscape Communicator jako open source (např. dobová zpráva CNET), z čehož vzešel projekt Mozilla – ten si výročí nyní připomíná.

    Fluttershy, yay! | Komentářů: 1
    včera 17:11 | Zajímavý software

    Na GOG.com běží Spring Sale. Při té příležitosti lze získat zdarma počítačovou hru Deep Sky Derelicts.

    Ladislav Hagara | Komentářů: 4
    včera 14:22 | Nová verze

    Sound Open Firmware, projekt Linux Foundation, open source audio DSP firmware a SDK, byl vydán ve verzi 2.5.0. Přináší podporu platformy Mediatek mt8188 nebo nový audio modul ARIA (Automatic Regressive Input Amplifier Module).

    Ladislav Hagara | Komentářů: 1
    včera 12:33 | Nová verze

    Byla vydána nová verze 5.8 programovacího jazyka Swift (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu. Ke stažení budou oficiální binární balíčky pro Ubuntu 18.04, Ubuntu 20.04, Ubuntu 22.04, CentOS 7, Amazon Linux 2 a Red Hat Universal Base Image 9.

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | Nová verze

    Byla vydána nová verze 1.77 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.77 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

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

    Byla vydána beta verze Ubuntu 23.04 s kódovým názvem Lunar Lobster. Přehled novinek v poznámkách k vydání. Dle plánu by Ubuntu 23.04 mělo vyjít 20. dubna 2023.

    Ladislav Hagara | Komentářů: 0
    30.3. 17:44 | Nová verze

    Linuxová distribuce OpenMandriva byla vydána ve verzi ROME 23.03. Název ROME říká, že se jedná se o průběžně aktualizovanou (rolling) edici. Stabilní edice nese název Rock, aktuálně OpenMandriva Lx 4.3 Dysprosium.

    Ladislav Hagara | Komentářů: 4
    30.3. 17:33 | Pozvánky

    Tento pátek od 14:00 proběhne v Brně na FI MUNI konference DevConf Mini. Na programu je celá řada zajímavých přednášek od testování releasů Fedory, přes super počítače nebo Big Data, až po závody autonomních aut. Konferenci bude možné sledovat i na online streamu.

    joejoe | Komentářů: 0
    30.3. 15:00 | Zajímavý článek

    Minulý týden proběhla hackerská soutěž Pwn2Own Vancouver 2023. Adobe Reader, Microsoft SharePoint, Oracle VirtualBox, Tesla, Ubuntu Desktop, Windows 11, macOS, Microsoft Teams, VMWare Workstation. Vše hacknuto. Synacktiv získal 530 000 dolarů a Teslu Model 3.

    Ladislav Hagara | Komentářů: 17
    Chodí vám kočka nebo jiné domácí zvíře po klávesnici?
     (56%)
     (11%)
     (6%)
     (11%)
     (17%)
    Celkem 18 hlasů
     Komentářů: 1, poslední dnes 16:04
    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: 208×
    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.