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 23:33 | Nová verze

    Byla vydána nová verze 25.10.31 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    1.11. 07:33 | Komunita

    O víkendu probíhá konference OpenAlt 2025 (Stream). Na programu je spousta zajímavých přednášek. Pokud jste v Brně, stavte se. Vstup zdarma.

    Ladislav Hagara | Komentářů: 0
    1.11. 00:55 | IT novinky

    Josef Průša představil novou velkoformátovou uzavřenou CoreXY 3D tiskárnu Prusa CORE One L a nový open source standard chytrých cívek OpenPrintTag i s novou přepracovanou špulkou.

    Ladislav Hagara | Komentářů: 7
    31.10. 18:33 | IT novinky

    Na GOG.com běží Autumn Sale. Při té příležitosti je zdarma hororová počítačová hra STASIS (ProtonDB: Platinum).

    Ladislav Hagara | Komentářů: 0
    31.10. 13:22 | Komunita

    Ubuntu 25.10 má nově balíčky sestavené také pro úroveň mikroarchitektury x86-64-v3 (amd64v3).

    Ladislav Hagara | Komentářů: 8
    31.10. 01:22 | Nová verze

    Byla vydána verze 1.91.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    31.10. 00:11 | IT novinky

    Ministerstvo průmyslu a obchodu vyhlásilo druhou veřejnou soutěž v programu TWIST, který podporuje výzkum, vývoj a využití umělé inteligence v podnikání. Firmy mohou získat až 30 milionů korun na jeden projekt zaměřený na nové produkty či inovaci podnikových procesů. Návrhy projektů lze podávat od 31. října do 17. prosince 2025. Celková alokace výzvy činí 800 milionů korun.

    Ladislav Hagara | Komentářů: 5
    30.10. 23:44 | Komunita

    Google v srpnu oznámil, že na „certifikovaných“ zařízeních s Androidem omezí instalaci aplikací (včetně „sideloadingu“) tak, že bude vyžadovat, aby aplikace byly podepsány centrálně registrovanými vývojáři s ověřenou identitou. Iniciativa Keep Android Open se to snaží zvrátit. Podepsat lze otevřený dopis adresovaný Googlu nebo petici na Change.org.

    Ladislav Hagara | Komentářů: 0
    30.10. 15:22 | Nová verze

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

    Ladislav Hagara | Komentářů: 2
    30.10. 12:55 | Nová verze

    Cursor (Wikipedie) od společnosti Anysphere byl vydán ve verzi 2.0. Jedná se o multiplatformní proprietární editor kódů s podporou AI (vibe coding).

    Ladislav Hagara | Komentářů: 1
    Jaké řešení používáte k vývoji / práci?
     (36%)
     (48%)
     (19%)
     (18%)
     (22%)
     (16%)
     (20%)
     (16%)
     (17%)
    Celkem 298 hlasů
     Komentářů: 15, poslední včera 08:25
    Rozcestník

    Dotaz: Pomoc s regularnim vyrazem

    irenicus avatar 9.5.2007 14:23 irenicus | skóre: 6
    Pomoc s regularnim vyrazem
    Přečteno: 262×
    Dobry den, dokaze nekdo napsat regularni vyraz ktery odseparuje jednotlive polozky nasledujiciho zaznamu z logu apache ?
    10.10.13.10 - - [09/May/2007:10:44:24 +0200] "GET /joomla/index.php HTTP/1.1" 200 8845
    vysledkem by mel o byti toto:
    10.10.13.10
    -
    -
    [09/May/2007:10:44:24 +0200]
    "GET /joomla/index.php HTTP/1.1"
    200
    8845
    
    Bojuji s tim uz dlouho a opravdu si nevim rady :-( ... pripadne by mi pomohlo kdyby nekdo "vytahl" alespon retezce
    [09/May/2007:10:44:24 +0200]
    "GET /joomla/index.php HTTP/1.1"
    

    Odpovědi

    9.5.2007 14:36 pasmen | skóre: 45 | blog: glob | Praha
    Rozbalit Rozbalit vše Re: Pomoc s regularnim vyrazem
    (\d+\.\d+\.\d+\.\d+)\s*?(\-)\s*?(\-)\s*?(\[.*\])\s*?(\".*\")\s*?(\d+)\s*?(\d+)
    9.5.2007 14:48 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Pomoc s regularnim vyrazem
    Navrhuji pouze drobnou změnu:
    (\d+\.\d+\.\d+\.\d+)\s*?(\-)\s*?(\-)\s*?(\[.*?\])\s*?(\".*\")\s*?(\d+)\s*?(\d+)
    9.5.2007 14:57 pasmen | skóre: 45 | blog: glob | Praha
    Rozbalit Rozbalit vše Re: Pomoc s regularnim vyrazem
    Jo na tohle jsem zapomnel, nicmene struktura retezce by chybu dopustit nemela. Ale jistota je jistota ;-) Jinak jeste pro autora: vyborna vec na hrani si s a testovani regularnich vyrazu je Pyreb.
    irenicus avatar 9.5.2007 15:03 irenicus | skóre: 6
    Rozbalit Rozbalit vše Re: Pomoc s regularnim vyrazem
    Dik vsem za bleskovou reakci ... musim vice studovat :-)
    9.5.2007 15:15 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Pomoc s regularnim vyrazem
    No, kdyby nějaký poťouchlý webový klient poslal dotaz třeba
    GET /?]" HTTP/1.0
    Host: example.com
    Pokud to tedy Apache do logu uloží neescapovaně (jako např. Jetty)…
    9.5.2007 15:36 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Pomoc s regularnim vyrazem
    hmm, apache to do logu uloží ako \" ... v tom prípade pomôže pridať na koniec $ ... a v mojej nižšie zapísanej verzii treba aj %r opraviť na .*, popr .*?, popr trochu zložitejšie (?: (?:\\\\)* (?:\\\")?[^\"])*
    9.5.2007 15:28 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Pomoc s regularnim vyrazem
    pozor na chyby, v combined logu nie vždy musia byť %l a %u nevyplnené ...
    qr/
    (\S+)             # %h
    \s+ (\S+)         # %l
    \s+ (\S+)         # %u
    \s+ (\[[^\]]*\])  # %t
    \s+ (\"[^\"]*\")  # \"%r\"
    \s+ (\d+)         # %>s
    \s+ (\S+)         # %b
    /x
    
    %b môže obsahovať aj -.

    irenicus avatar 9.5.2007 15:22 irenicus | skóre: 6
    Rozbalit Rozbalit vše Re: Pomoc s regularnim vyrazem
    Hmmm .... co kdyby byl LogFormat libovolne definovan ? Mohl bych preformulovat ulohu asi takto:

    Vrat vsechny souvisle casti textu: za souvislou cast testu povazuj ty casti jenz jsou vymezeny [] nebo "" jinak vse ostatni jenz neobsahuje mezeru.
    9.5.2007 15:46 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Pomoc s regularnim vyrazem
    Na to už bych doporučoval napsat si nějaký miniparser (1 cyklus, pár switchů nebo ifů, za 5 minut hotovo), bude to jednodušší, než se mořit s vyhlížením v regulárních výrazech (a kdo ví, zda by to i s tím vyhlížením šlo; navíc ne každý RE engine vyhlížení umí).
    irenicus avatar 9.5.2007 15:50 irenicus | skóre: 6
    Rozbalit Rozbalit vše Re: Pomoc s regularnim vyrazem
    Kazdopadne jsem s tim jiz zacal. Snazil jsme se pouze najit elegantni reseni a RegExp se mi pripadali jako spravna cesta.
    9.5.2007 16:09 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Pomoc s regularnim vyrazem
    perl, bez look(ahead/behind) :-)
    pri troche odvahy to možno aj v php niekto vyskúša s/( (?: [^\[\"]\S* ) | (?: \" (?: (?:\\\\)* (?:\\\")?[^\"])* \" ) | (?: \[ .*? \] ) ) \s+/$1\n/xg; my @vars = split /\n/;

    (ps. netestované, nechcelo sa mi ...)

    9.5.2007 16:39 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Pomoc s regularnim vyrazem
    Asi jo :-) Jinak hezká ukázka toho, že RE je lepší používat jen na jednoduché věci nebo jednorázově, protože složitější RE jsou write-only ;-)
    9.5.2007 16:48 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Pomoc s regularnim vyrazem
    write-only? pôvodne som to chcel dať do <pre>, ale sekol som sa :-D
    čudoval by ste sa, čo urobí pár nových riadkov a medzier s čitateľnosťou :-)
    9.5.2007 17:13 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Pomoc s regularnim vyrazem
    Já jsem se na to díval samozřejmě do zdrojáku HTML, kde to je odřádkované :-) Ale stejně, že by bylo na první pohled jasné, co to dělá… Tenhle konkrétní případ je ještě dobrý, ale pak si někdo vzpomene, že tam mohou být i jednoduché uvozovky, a je problém. Tedy ne že bych sám nenapsal složitější RE. Ale tohle je podle mě dobrý příklad toho, že RE jsou sice mocné, ale občas se vyplatí použít něco tak obyčejného, jako cyklus a switch.

    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.