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:44 | Komunita

    Open source konference DevConf.CZ 2026 proběhne 18. a 19. června v Brně na FIT VUT. Publikován byl program a spuštěna byla registrace.

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

    Společnost JetBrains uvolnila verzi 2 svého open-source velkého jazykového modelu (LLM) pro vývojáře Mellum.

    Ladislav Hagara | Komentářů: 0
    včera 14:44 | IT novinky

    Probíhá konference Microsoft Build 2026. Microsoft představuje své novinky: kvantový čip Majorana 2, Surface Laptop Ultra a Surface RTX Spark Dev Box s NVIDIA RTX Spark, Intelligent Terminal, Coreutils for Windows (fork Rust Coreutils), AI modely MAI, AI agenta Scout, platformu pro agent-first zařízení Project Solara, …

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

    Google Chrome 149 byl prohlášen za stabilní. Nejnovější stabilní verze 149.0.7827.53 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    včera 10:55 | Nová verze

    Pluto.jl, reaktivní notebook pro programovací jazyk Julia, dospěl do verze 1.0.

    Ladislav Hagara | Komentářů: 3
    2.6. 13:44 | Nová verze

    Byla vydána nová verze 12.0.0 vizuálního programovacího jazyka Snap! (Wikipedie) inspirovaného jazykem Scratch (Wikipedie). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 0
    2.6. 11:44 | IT novinky

    Počítačovou hru Gravity Circuit (ProtonDB) lze do 14. června do 19:00 získat na Steamu zdarma. Napořád.

    Ladislav Hagara | Komentářů: 0
    2.6. 11:00 | Bezpečnostní upozornění

    Nejnovější X.Org X server 21.1.23 a Xwayland 24.1.12 řeší 9 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    1.6. 22:33 | Bezpečnostní upozornění

    npm balíčky @redhat-cloud-services byly kompromitovány.

    Ladislav Hagara | Komentářů: 5
    1.6. 22:22 | Bezpečnostní upozornění

    Byly publikovány informace o zranitelnosti CVE-2026-46243 pojmenované CIFSwitch v Linuxu od roku 2007. Běžný uživatel může získat práva roota (lokální eskalaci práv). V upstreamu je již opraveno.

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


    Dotaz: Perl, unicode a regexp

    16.10.2008 21:58 Marek 'marx' Grác | skóre: 21 | blog: Paralelný blog | Brno / Bratislava
    Perl, unicode a regexp
    Přečteno: 366×
    Majme kód:
    use strict;
    use utf8;
    use locale;
    use XML::Simple;
    
    binmode (STDIN, 'utf8');
    binmode (STDOUT, 'utf8');  
    binmode (STDERR, 'utf8');
    
    ...
    
    $desc="kamém2,";
    print "BRK2>$desc\<\n";
    if ($desc =~ /žitkov..?.?\s+(ploch..? )?(dom. )?(je )?(cca )?(\d+)\s*m2/) {
        $uzitkova_plocha = $5;
    } elsif ($desc =~ /ÚP:? (\d+)\s*m2/) {
         $uzitkova_plocha = $1;
    }
    print "BRK3\n";
    
    V podstate veľmi jednoduchá vec, ktorá parsuje súbor tak ako má. Pri niektorých vstupoch (100% reprodukovateľné), napr. ak $desc obsahujé 'ém2,' tak to na riadku s ÚP začne cykliť a dokáže to vyťažiť jeden procesor na 100%. Riešenie (A) je zmeniť ÚP na UP - to by som chápal. Riešenie (B) je pridať k RE case insensitive flag. Napadá vás nejaké riešenie, ktoré je rozumnejšie?

    Testované v perle 5.8.8 a 5.8.7

    Odpovědi

    16.10.2008 23:53 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Perl, unicode a regexp
    pozrieť bugreporty a upgrade :-)
    17.10.2008 08:50 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: Perl, unicode a regexp
    asi to bude skutecne nejaky bug, protoze ve verzi 5.10 se to chova jak ma. imho ma problem s tim \s - dalsi zpusob jak to "obejit" je lookaround:
    /ÚP:? (\d+)(?=\s*m2)/
    
    In Ada the typical infinite loop would normally be terminated by detonation.

    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.