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 03:55 | Bezpečnostní upozornění

    Příspěvek na blogu Ubuntu upozorňuje na několik zranitelností v rozšíření Linuxu o mandatorní řízení přístupu AppArmor. Společně jsou označovány jako CrackArmor. Objevila je společnost Qualys (technické detaily). Neprivilegovaný lokální uživatel se může stát rootem. Chyba existuje od roku 2017. Doporučuje se okamžitá aktualizace. Problém se týká Ubuntu, Debianu nebo SUSE. Red Hat nebo Fedora pro mandatorní řízení přístupu používají SELinux.

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

    Byla vydána nová verze 19 integrovaného vývojového prostředí (IDE) Qt Creator. Podrobný přehled novinek v changelogu.

    Ladislav Hagara | Komentářů: 0
    včera 03:44 | Nová verze

    Bitwig Studio (Wikipedie) bylo vydáno ve verzi 6. Jedná se o proprietární multiplatformní (macOS, Windows, Linux) digitální pracovní stanici pro práci s audiem (DAW).

    Ladislav Hagara | Komentářů: 3
    včera 02:11 | Komunita

    Společnost Igalia představila novou linuxovou distribuci (framework) s názvem Moonforge. Jedná se o distribuci určenou pro vestavěné systémy. Vychází z projektů Yocto a OpenEmbedded.

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

    Google Chrome 146 byl prohlášen za stabilní. Nejnovější stabilní verze 146.0.7680.71 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 29 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.

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

    D7VK byl vydán ve verzi 1.5. Jedná se o fork DXVK implementující překlad volání Direct3D 3 (novinka), 5, 6 a 7 na Vulkan. DXVK zvládá Direct3D 8, 9, 10 a 11.

    Ladislav Hagara | Komentářů: 0
    11.3. 23:22 | Nová verze

    Bylo vydáno Eclipse IDE 2026-03 aneb Eclipse 4.39. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.

    Ladislav Hagara | Komentářů: 4
    11.3. 10:22 | Upozornění

    Ze systému Slavia pojišťovny uniklo přibližně 150 gigabajtů citlivých dat. Jedná se například o pojistné dokumenty, lékařské záznamy nebo přímou komunikaci s klienty. Za únik může chyba dodavatelské společnosti.

    Ladislav Hagara | Komentářů: 11
    11.3. 10:11 | IT novinky

    Sněmovna propustila do dalšího kola projednávání vládní návrh zákona o digitální ekonomice, který má přinést bezpečnější on-line prostředí. Reaguje na evropské nařízení DSA o digitálních službách a upravuje třeba pravidla pro on-line tržiště nebo sociální sítě a má i víc chránit děti.

    Ladislav Hagara | Komentářů: 34
    11.3. 09:33 | IT novinky

    Meta převezme sociální síť pro umělou inteligenci (AI) Moltbook. Tvůrci Moltbooku – Matt Schlicht a Ben Parr – se díky dohodě stanou součástí Meta Superintelligence Labs (MSL). Meta MSL založila s cílem sjednotit své aktivity na poli AI a vyvinout takovou umělou inteligenci, která překoná lidské schopnosti v mnoha oblastech. Fungovat by měla ne jako centralizovaný nástroj, ale jako osobní asistent pro každého uživatele.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (16%)
     (7%)
     (0%)
     (11%)
     (29%)
     (2%)
     (5%)
     (2%)
     (13%)
     (25%)
    Celkem 1060 hlasů
     Komentářů: 26, poslední včera 08:56
    Rozcestník

    Dotaz: Regulární výraz-získání hodnot

    26.9.2007 18:32 filbar | skóre: 36 | blog: Denicek_programatora | Ostrava
    Regulární výraz-získání hodnot
    Přečteno: 322×

    Nevíte, jak ze souboru tohoto typu:

     <option value="152">Abertamy</option>
                          <option value="269">Adamov u Brna</option>
                          <option
                  value="479">Adolfovice</option>
                          <option value="182">Adršpach</option>
                          <option value="170">Albrechtice</option>
                          <option
                  value="271">Aš</option>
                          <option value="293">Babylon</option>
                          <option
                  value="459">Bačetín</option>
                            <option value="179">Bartošovice v
                              Orlických horách</option>
                          <option value="410">Batelov</option>
                          <option value="155">Batňovice</option>
                            <option value="233">Bečov nad
                              Teplou</option>
                          <option value="1">Bedřichov</option>
                          <option
                  value="349">Bechyně</option>
    

    získat asi nejlépe pomocí nějakého rogulárního výrazu ty hodnoty value="xxx" a pak textové hodnoty jako např.: Abertamy, a udělal z nich řetězce jako

    INSERT INTO #__tabulka SET id=152, name=Abertamy;

    Za odpovědi předem děkuji.

    Odpovědi

    26.9.2007 18:38 neaktivni | skóre: 24 | blog: neaktivni
    Rozbalit Rozbalit vše Re: Regulární výraz-získání hodnot
    vzhledem ke sve lenosti bych to udelal asi pomoci PHP (i to vkladani do db) pres SimpleXML
    26.9.2007 18:44 pupu | skóre: 31
    Rozbalit Rozbalit vše Re: Regulární výraz-získání hodnot
    Pokud je to co radek, to jeden zaznam, je to trivialni. Pokud ne, tak to uz tak trivialni neni.

    trivialni reseni muze byt treba takhle: perl -ne '/<option value=\"(\d+)\">([^<]+)<\/option>/ && print "$2 $1\n"'

    Vyhovuje?

    poznamka pro administratory: je opravdu tak zasadni problem pridat do zahlavi zatrhavatko 'prosty text'? prepisovat html znovu do html je drobet opruz
    26.9.2007 18:53 filbar | skóre: 36 | blog: Denicek_programatora | Ostrava
    Rozbalit Rozbalit vše Re: Regulární výraz-získání hodnot
    Je to co řádek to záznam, ale problém je, že někdy je text option na jednom řádku a pokračování na druhém
    26.9.2007 19:31 pupu | skóre: 31
    Rozbalit Rozbalit vše Re: Regulární výraz-získání hodnot
    Hmm. Vzhledem k tomu, ze jsem zname prase jdouci cestou nejmensiho odporu a na estetiku nehledici, udelal bych to klidne takhle (pokud bych tedy fakt hodne spechal):

    perl -e 'while (<>) {chomp;$radek=$radek." ".$_;}; $radek=~s/option>/option>\n/g; print $radek' <vstup |perl -ne '/<option\s+value=\"(\d+)\">([^<]+)<\/option>/ && print "$2 $1\n"' >vystup

    Akorat to produkuje mezery v mistech, kde je zalomeny radek, protoze tam ty mezery skutecne jsou. Asi bych doporucil spis nejake uz hotove udelatko pro praci s XML, tohle uz je vazne pakarna.
    26.9.2007 19:56 pupu | skóre: 31
    Rozbalit Rozbalit vše Re: Regulární výraz-získání hodnot
    No, neda mi to ;-) Pokud by se nelibily mezery, jeste muzete pridat jedno s/\ \ +/\ /g; - pokud jsou v tom souboru tedy opravdu jen mezery a ne treba tabulatory.
    26.9.2007 19:02 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Regulární výraz-získání hodnot
    Pokud nechcete podnkita dobrodružství ohledně toho, jak se tagy zrovna zalomí, nepoužívejte regulární výrazy, ale udělejte z toho normální XML (tj. zabalte to celé např do <data>…</data>) a použijte XPath. Takže třeba libovolný xslt procesor a použijte následující transformaci:
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    	<xsl:output method="text"/>
    	<xsl:template match="option">
    INSERT INTO #__tabulka SET id=<xsl:value-of select="@value"/>, name='<xsl:value-of select="."/>';
    	</xsl:template>
    </xsl:stylesheet>
    
    Pokud přidáte k datovému souboru instrukci pro zpracování, zobrazí vám výsledek i každý lepší webový prohlížeč.
    <?xml version="1.0 ?>
    <?xml-stylesheet type="text/xml" href="template.xsl" ?>
    <data>
    	<option value="152">Abertamy</option>
    	…
    </data>
    
    26.9.2007 19:33 filbar | skóre: 36 | blog: Denicek_programatora | Ostrava
    Rozbalit Rozbalit vše Re: Regulární výraz-získání hodnot
    A jde nějak pomocí toho zajistit, aby se odstranily zalomená řádků? Když je v tom souboru např.:
    Benešov nad 
                              Černou
    
    tak aby se z toho stalo
    Benešov nad Černou
    26.9.2007 19:56 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Regulární výraz-získání hodnot
    Zkuste místo <xsl:value-of select="."/> použít
    <xsl:value-of select="normalize-space(.)"/>
    
    případně
    <xsl:value-of select="normalize-space(translate(.,'&#10;&#13;','  '))"/>
    
    26.9.2007 20:11 filbar | skóre: 36 | blog: Denicek_programatora | Ostrava
    Rozbalit Rozbalit vše Re: Regulární výraz-získání hodnot
    Super, díky, funguje;-);-)
    26.9.2007 19:48 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Regulární výraz-získání hodnot
    Pokud toužíte po reg. výrazech, tak velmi zhruba nástin v Javě:
    Pattern p = Pattern.compile("<option value=\"([1-9][0-9]*)\">(.*?)</option>", Pattern.DOTALL);
    Matcher m = p.matcher(...data...);
    while(m.find()) System.println("INSERT INTO #__tablulka SET id=" + m.group(1) + ", name=" + m.group(2));
    ale osobně bych šel do té transformace :)

    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.