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

    Ve FreeBSD byla nalezena a opravena zranitelnost FatGid aneb CVE-2026-45250. Jedná se o lokální eskalaci práv. Neprivilegovaný uživatel se může stát rootem.

    Ladislav Hagara | Komentářů: 0
    dnes 14:33 | IT novinky

    Společnost Flipper Devices oznámila Flipper One. Zcela nový Flipper postavený od nuly. Jedná se o open-source linuxovou platformu založenou na čipu Rockchip RK3576. Hledají se dobrovolníci pro pomoc s dokončením vývoje (ovladače, testování, tvorba modulů).

    Ladislav Hagara | Komentářů: 2
    dnes 14:00 | Nová verze

    Vývojáři Wine oznámili vydání verze 2.0 knihovny vkd3d pro překlad volání Direct3D na Vulkan. Přehled novinek na GitLabu.

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

    Společnost Red Hat oznámila vydání Red Hat Enterprise Linuxu (RHEL) 10.2 a 9.8. Vedle nových vlastností a oprav chyb přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Vypíchnout lze CLI AI asistenta goose. Podrobnosti v poznámkách k vydání (10.2 a 9.8).

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

    Organizace Apache Software Foundation (ASF) vydala verzi 30 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 0
    dnes 05:00 | Nová verze

    Byla vydána nová verze 7.0 svobodného open source redakčního systému WordPress. Kódové jméno Armstrong bylo vybráno na počest amerického jazzového trumpetisty a zpěváka Louise Armstronga (What A Wonderful World).

    Ladislav Hagara | Komentářů: 0
    dnes 04:55 | Bezpečnostní upozornění

    V Drupalu byla nalezena a opravena kritická zranitelnost SA-CORE-2026-004 (CVE-2026-9082). Útočník může provádět libovolné SQL dotazy na webech používajících databázi PostgreSQL.

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

    Richard Hughes oznámil, že službu Linux Vendor Firmware Service (LVFS) umožňující aktualizovat firmware zařízení na počítačích s Linuxem, nově sponzoruje také společnost HP.

    Ladislav Hagara | Komentářů: 3
    včera 13:33 | IT novinky

    O víkendu proběhla demopárty Outline 2026. Publikována byla prezentovaná dema. Upozornit lze na 16 bajtové, opravdu šestnáct bajtové, zvukově obrazové demo Wake Up! 16b (YouTube).

    Ladislav Hagara | Komentářů: 2
    včera 04:22 | Nová verze

    Byla vydána nová verze 9.5 multiplatformní digitální pracovní stanice pro práci s audiem (DAW) Ardour. Přehled novinek, vylepšení a oprav v poznámkách k vydání a na YouTube.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (13%)
     (8%)
     (2%)
     (14%)
     (31%)
     (4%)
     (6%)
     (3%)
     (16%)
     (26%)
    Celkem 1678 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    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: 269×
    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.