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 20:11 | Nová verze

    Byla vydána nová verze 2.4.67 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 11 zranitelností.

    Ladislav Hagara | Komentářů: 1
    dnes 14:44 | Zajímavý software

    Brush (Bo(u)rn(e) RUsty SHell) je v Rustu napsaný shell kompatibilní s Bash (Bourne Again SHell). Vydána byla verze 0.4.0.

    Ladislav Hagara | Komentářů: 0
    dnes 04:44 | Komunita

    Google zveřejnil seznam 1 141 projektů (vývojářů) od 184 organizací přijatých do letošního, již dvaadvacátého, Google Summer of Code. Přihlášeno bylo celkově 23 371 projektů od 15 245 vývojářů ze 131 zemí.

    Ladislav Hagara | Komentářů: 2
    dnes 03:00 | Komunita

    Na čem pracovali vývojáři GNOME a KDE Plasma minulý týden? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.

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

    Open source počítačová hra na hrdiny NetHack (Wikipedie, GitHub) byla vydána v nové verzi 5.0.0. První verze této hry byla vydána v roce 1987.

    Ladislav Hagara | Komentářů: 2
    1.5. 15:11 | IT novinky

    Evropská komise naléhavě vyzvala členské státy EU, aby kvůli ochraně nezletilých na internetu urychlily zavádění unijní aplikace pro ověřování věku a zajistily její dostupnost do konce roku. Členské státy mohou zavést aplikaci EU pro ověřování věku jako samostatnou aplikaci nebo ji integrovat do takzvané evropské peněženky digitální identity.

    Ladislav Hagara | Komentářů: 39
    30.4. 23:33 | Nová verze

    Richard Biener oznámil vydání verze 16.1 (16.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 16. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.

    Ladislav Hagara | Komentářů: 0
    30.4. 23:11 | Nová verze

    Zulip Server z open source komunikační platformy Zulip (Wikipedie, GitHub) byl vydán ve verzi 12.0. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 1
    30.4. 12:11 | IT novinky

    Před 30 lety, tj. v úterý 30. dubna 1996, byl spuštěn Seznam.cz.

    Ladislav Hagara | Komentářů: 44
    30.4. 11:44 | Komunita

    Byly zpracovány a zveřejněny všechny videozáznamy, které stojí za zveřejnění, z konference FOSDEM 2026.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (9%)
     (2%)
     (14%)
     (32%)
     (4%)
     (7%)
     (3%)
     (16%)
     (24%)
    Celkem 1495 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: Reg. výraz na vyhľadanie určitých častí zo súboru

    Marián Oravec avatar 4.10.2007 09:22 Marián Oravec | skóre: 22 | Nitra
    Reg. výraz na vyhľadanie určitých častí zo súboru
    Přečteno: 313×
    Ahoj.

    Dosť často, kvôli uľahčeniu práce, potrebujem napísať regulárny výraz, ktorý by našiel určité časti textového, HTML, XML apod. súboru.

    Uvažujme nasledujúci súbor (možno sa podobá na XML, ale zaujíma ma riešenie pomocou regulárneho výrazu):
     1. [ROOT]
     2.   [A]
     3.     nieco
     4.   [/A]
     5.   [A]
     6.     aaa
     7.   [/A]
     8.   [A]
     9.     nieco
    10.   [/A]
    11.   [B]
    12.     [C]
    13.       nieco
    14.     [/C]
    15.   [/B]
    16.   [A]
    17.     aaa
    18.   [/A]
    19.   [A]
    20.     nieco
    21.   [/A]
    22. [/ROOT]
    
    Chcem vyhľadať LEN tie časti/elementy "[A]..[/A]", ktoré v sebe (kdekoľvek, aj vo vnorenej časti/elemente) obsahujú text "aaa".

    Skúšal som nasledovné: (?s)\[A\].*?aaa.*?\[\/A\] ale nefunguje správne. Prvý match je od 2. po 7. riadok a druhý match je od 8. po 18. riadok. Čiže match obsahuje aj časti, ktoré nechcem...

    Čo vlastne potrebujem: Nájsť element [A], za ním (v ňom) hľadať text "aaa", ale hľadať ho iba dovtedy, kým nenarazím na koniec tohto elementu [/A].

    PS: Uvažujme, že v elemente A nemôže byť vnorený ďalší element A (ale iné môžu).

    Za radu vopred ďakujem.
    Mám rád elektro, ale vypočujem si aj iné...

    Odpovědi

    4.10.2007 09:30 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Reg. výraz na vyhľadanie určitých častí zo súboru
    Musíte zařídit, aby výplň okolo aaa nemohla obsahovat [A]. Zkusil bych
    (?s)\[A\](?!\[A\])*?aaa(?!\[A\])*?\[\/A\]
    Marián Oravec avatar 4.10.2007 09:39 Marián Oravec | skóre: 22 | Nitra
    Rozbalit Rozbalit vše Re: Reg. výraz na vyhľadanie určitých častí zo súboru
    Bohužiaľ toto nefunguje :-(
    Mám rád elektro, ale vypočujem si aj iné...
    4.10.2007 09:43 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Reg. výraz na vyhľadanie určitých častí zo súboru
    Nefunguje znamená co? Používáte program, který tomu regulárnímu výrazu nerozumí, najde to něco jiného, nenajde to nic?
    Marián Oravec avatar 4.10.2007 09:51 Marián Oravec | skóre: 22 | Nitra
    Rozbalit Rozbalit vše Re: Reg. výraz na vyhľadanie určitých častí zo súboru
    Nenájde to nič. Skúšal som viac modifikácií, napr. (?s)\[A\](?!\[A\]).*?aaa(?!\[A\]).*?\[\/A\] (bodky pred *), ale bez úspechu.
    Mám rád elektro, ale vypočujem si aj iné...
    4.10.2007 10:29 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Reg. výraz na vyhľadanie určitých častí zo súboru
    V tom případě zkuste toto (v eclipse to funguje):
    (?s)\[A\]([^\[]|\[(?!A))*?aaa.*?\[/A\]
    Marián Oravec avatar 4.10.2007 10:45 Marián Oravec | skóre: 22 | Nitra
    Rozbalit Rozbalit vše Re: Reg. výraz na vyhľadanie určitých častí zo súboru
    Ďakujem, tento regulárny výraz funguje správne. Je to presne to čo som potreboval. Ešte raz ďakujem a otázku označujem za vyriešenú.
    Mám rád elektro, ale vypočujem si aj iné...
    4.10.2007 09:35 Vojtěch Horký | skóre: 39 | blog: Vojtův zápisník | Praha
    Rozbalit Rozbalit vše Re: Reg. výraz na vyhľadanie určitých častí zo súboru

    Tohle řešení by bylo přípustné (předpokládá uvedené formátování)?

    sed -n '/\[A\]/,/\[\/A\]/p' | \
       sed -n ':a;s#\[\/A\]#[/A]#;t b;N;b a;:b;/aaa/p'

    PS: Možná by to šlo udělat na jeden průchod (bez roury).

    I am always ready to learn although I do not always like to be taught. (W. Churchill)
    Marián Oravec avatar 4.10.2007 09:49 Marián Oravec | skóre: 22 | Nitra
    Rozbalit Rozbalit vše Re: Reg. výraz na vyhľadanie určitých častí zo súboru
    No super. Toto funguje. Síce neviem pracovať s programom sed, ale pokiaľ neprídem na niečo lepšie, tak je toto použiteľné. O regulárny výraz mi išlo preto, lebo som to chcel používať priamo v Eclipse, Kate... Takto je to trocha nepraktické, ale lepšie, ako prechádzať 0.5 MB XML po riadkoch. :-)

    V každom prípade ďakujem za pomoc.
    Mám rád elektro, ale vypočujem si aj iné...

    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.