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 16:55 | Nová verze

    Kancelářský balík LibreOffice byl vydán ve verzi 26.8. Mimo jiné vylepšuje typografii a kompatibilitu s formáty MS Office, více v poznámkách k vydání.

    |🇵🇸 | Komentářů: 0
    dnes 14:55 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 26.8. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 4
    dnes 11:44 | Nová verze

    Byla vydána nová verze 23.1.0, tj. první stabilní verze z nové řady 23.1.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools, Libc++, Polly a Flang.

    Ladislav Hagara | Komentářů: 0
    dnes 02:11 | Nová verze

    Google Chrome 152 byl prohlášen za stabilní. Nejnovější stabilní verze 152.0.7977.64 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Opraveno bylo 327 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    dnes 01:11 | Komunita

    Před 35 lety, 25. srpna 1991, oznámil Linus Benedict Torvalds v diskusní skupině comp.os.minix, že vyvíjí (svobodný) operační systém (jako koníček, nebude tak velký a profesionální jako GNU) pro klony 386 (486), že začal v dubnu a během několika měsíců by mohl mít něco použitelného.

    Ladislav Hagara | Komentářů: 0
    včera 16:33 | IT novinky

    Apple představil čipy M6 a M5 Ultra, Mac mini s M6 nebo M5 Pro a Mac Studio s M5 Max nebo M5 Ultra. Fedora Asahi Remix zatím podporuje jenom M1 a M2.

    Ladislav Hagara | Komentářů: 12
    včera 14:11 | Komunita

    Firefox 157 přinese zapnutou podporu rastrového grafického formátu JPEG XL. Založena je na v Rustu napsané implementaci jxl-rs používané i v Chrome a Chromiu.

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

    Vanilla OS 3 „Reunion“ byl vydán. Tato na Debianu „Sid“ založená desktopová distribuce s transakčními aktualizacemi „neměnného“ základního systému (ABRoot) nově podporuje architekturu arm64 (vedle x86-64), podporuje reprodukovatelné sestavení většiny balíčků a vylepšuje systémové nástroje. Vlastní meta-správce balíčků APX nyní používá Distrobox v2 a je dostupný i pro jiné distribuce.

    |🇵🇸 | Komentářů: 0
    24.8. 16:00 | IT novinky

    Řemínky pro Apple Watch, bezdrátová sluchátka nebo nabíjecí adaptéry. Takovou nabídku našli v uplynulých dnech příslušníci Celního úřadu v Liberci při kontrole kamenného obchodu na Náchodsku. Celkem zde zadrželi 3 035 kusů zboží podezřelého z porušování práv duševního vlastnictví. Pokud by se jednalo o originální výrobky, jejich hodnota by podle odhadu přesáhla 10,8 milionu korun.

    Ladislav Hagara | Komentářů: 11
    24.8. 14:11 | Nová verze

    Byla vydána verze 31.1 textového editoru GNU Emacs. Podrobný přehled novinek v souboru NEWS.

    Ladislav Hagara | Komentářů: 5
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (19%)
     (29%)
     (7%)
     (6%)
     (2%)
     (15%)
     (22%)
    Celkem 2500 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Dotaz: Hladové regexpy

    6.1.2005 16:32 Lukáš Zapletal | skóre: 42 | blog: lzapův svět | Olomouc
    Hladové regexpy
    Přečteno: 295×
    DD,

    mám otázku ohledně Perlu. V jakém pořadí vyhodnocuje logickým NEBO spojený výraz? Příklad:
    if ("te tea teta" =~ /(t|te).*/) {
    	print $1;
    } else {
    	print "NE";
    }
    vrátí "t". Jaktože ale zde neplatí "hladové" pravidlo, kdy se Perl snaží vyhovět co nejširší odpovědi?

    Druhá otázka. Je někde stanoveno, jakým směrem má vybírat při postupu? Myslím tím, jestliže kdybych seřadil ten regulární výraz od nejdelšího k nejkratšímu (te|t), tak jestlipak budu mít zaručeno, že se dříve najde "te"?

    Snad jsem k pochopení :-)

    Odpovědi

    6.1.2005 16:41 Lukáš Zapletal | skóre: 42 | blog: lzapův svět | Olomouc
    Rozbalit Rozbalit vše Re: Hladové regexpy
    Teda abych se vymáčk...

    Potřebuji sestrojit regexp, který by mi našel nejdelší přefix pro určité slovo. Například pro slovo "vykopat" by hledal předpony "v, vy, vyko" a našel by tu nejdelší - vyko.

    Jelikož by to šlo řešit regulárním automatem, tak by to snad mělo jít i řešit regulárním výrazem... :-)
    6.1.2005 17:23 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Hladové regexpy
    OR matchuje kdo první přijde, první mele.
    6.1.2005 17:27 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Hladové regexpy
    Další možnost je (v(y(ko)?)?), ale vnitřní skupiny by musely být nečíslované, aby se v tom vyznalo alespoň prase, což v perlu nevím z hlavy, ale je to v manu (proč sakra perl nemá v regulárních výrazech pojmenované skupiny jako python?).
    6.1.2005 17:28 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
    Rozbalit Rozbalit vše Re: Hladové regexpy
    A přitom (e)grep se chová jinak :-(
    $ echo "ahoj vole" | perl -e 'if (<> =~ /^(a|ah|aho|ahoj)/) {print "$1\n";}'
    a
    $ echo "ahoj vole" | grep -Eo '^(a|ah|aho|ahoj)'
    ahoj
    
    6.1.2005 17:34 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Hladové regexpy
    Tak to je rána pod pás, myslel jsem, že je to tak všude...

    Python, vim -- kdo první přijde.

    sed -- nejdelší (bez -r i s ním).
    6.1.2005 18:04 ivok
    Rozbalit Rozbalit vše Re: Hladové regexpy
    Ale muzete ho taky prinutit, aby se choval stejne :-)
    [ivok@zero ivok]$ echo "ahoj vole" | grep -Po '(a|ah|aho|ahoj)'
    a
    
    6.1.2005 17:32 ivok
    Rozbalit Rozbalit vše Re: Hladové regexpy
    kousek z man perlre
    Alternatives are tried from left to right, so the first alternative
    found for which the entire expression matches, is the one that is cho-
    sen. This means that alternatives are not necessarily greedy. For exam-
    ple: when matching "foo|foot" against "barefoot", only the "foo" part
    will match, as that is the first alternative tried, and it successfully
    matches the target string. (This might not seem important, but it is
    important when you are capturing matched text using parentheses.)
    
    experimenátlní potvrzení :-)

    [ivok@zero ivok]$ perl -e 'print "$1\n" if ("te tea teta" =~ /(te|t)/)'
    te
    [ivok@zero ivok]$ perl -e 'print "$1\n" if ("te tea teta" =~ /(t|te)/)'
    t
    
    takže: ano, není to greedy, a ano, máte zaručeno, že se matchuje v alternativách zleva doprava. aspoň v té verzi perlu, co tu mám já (5.8.5) :-)

    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.