abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 22:22 | Bezpečnostní upozornění

    Dellu byla odcizena databáze zákazníků (jméno, adresa, seznam zakoupených produktů) [Customer Care, Bleeping Computer].

    Ladislav Hagara | Komentářů: 2
    včera 21:11 | Zajímavý článek

    V lednu byl otevřen editor kódů Zed od autorů editoru Atom a Tree-sitter. Tenkrát běžel pouze na macOS. Byl napevno svázán s Metalem. Situace se ale postupně mění. V aktuálním příspěvku Kdy Zed na Linuxu? na blogu Zedu vývojáři popisují aktuální stav. Blíží se alfa verze.

    Ladislav Hagara | Komentářů: 5
    včera 14:33 | Pozvánky

    O víkendu 11. a 12. května lze navštívit Maker Faire Prague, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

    Ladislav Hagara | Komentářů: 0
    8.5. 21:55 | Nová verze

    Byl vydán Fedora Asahi Remix 40, tj. linuxová distribuce pro Apple Silicon vycházející z Fedora Linuxu 40.

    Ladislav Hagara | Komentářů: 21
    8.5. 20:22 | IT novinky

    Představena byla služba Raspberry Pi Connect usnadňující vzdálený grafický přístup k vašim Raspberry Pi z webového prohlížeče. Odkudkoli. Zdarma. Zatím v beta verzi. Detaily v dokumentaci.

    Ladislav Hagara | Komentářů: 5
    8.5. 12:55 | Nová verze

    Byla vydána verze R14.1.2 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.

    JZD | Komentářů: 0
    7.5. 18:55 | IT novinky

    Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).

    Ladislav Hagara | Komentářů: 10
    7.5. 18:33 | IT novinky

    Apple představil (keynote) iPad Pro s čipem Apple M4, předělaný iPad Air ve dvou velikostech a nový Apple Pencil Pro.

    Ladislav Hagara | Komentářů: 4
    7.5. 17:11 | Nová verze

    Richard Biener oznámil vydání verze 14.1 (14.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 14. 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
    7.5. 13:44 | Komunita

    Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2023. Vybráni byli Bruno Haible za dlouhodobé příspěvky a správu knihovny Gnulib, nováček Nick Logozzo za front-end Parabolic pro yt-dlp a tým Mission logiciels libres francouzského státu za nasazování svobodného softwaru do praxe.

    Fluttershy, yay! | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (63%)
     (8%)
     (13%)
     (16%)
    Celkem 146 hlasů
     Komentářů: 10, poslední 8.5. 17:35
    Rozcestník

    Dotaz: Perl a rozdělení textu

    23.5.2010 19:37 LuRy | skóre: 12
    Perl a rozdělení textu
    Přečteno: 313×
    Ahoj, Pár dní řeším problém jak rozdělit text podle regulerniho vyrazu v momente kdyz se v souboru daný text obevuje víckrát vyhovujivcí stejnému reg. výrazu. "=~" mi vypíše pokaždé jenom první výskyt. Zkouším to mimo na příkladu dole, kde potrebuju z retezce vypsat pouze to co je mezi dvojteckama a podari se mi vypsat jenom 3434 (udělat reg. vyraz pro cely tento retezc mi moc nepomuze vzhledem k tomu ze nemuzu predpovidat kolik tech cisel mezi dvojteckami bude, tohle je jen pouze testovaci priklad) zkousel sem i ty rozdelovaci podminky pod sebe nebo i grepem kterym se mi to moc nepovedlo, nejlepsi vystup by byl do pole nevíte někdo jak na to?

    $cislosmajlu = "---:3434: dasdas :2343:dasd a :5678:adasd dsadas:43587:aaaaaaa:23456879:"; if ($cislosmajlu =~ /(:([0-9]+):)+/) { print $1 ;}

    Řešení dotazu:


    Odpovědi

    23.5.2010 20:06 Ondřej Kopka | skóre: 20 | blog: ondrejk
    Rozbalit Rozbalit vše Re: Perl a rozdělení textu
    Ahoj, zkus split
    23.5.2010 20:14 LuRy | skóre: 12
    Rozbalit Rozbalit vše Re: Perl a rozdělení textu
    taky me napad split jenze podle ceho to rozdelit splitem to uz sem nevykoumal.. mozna podle tech dvojtecek jenze to bude desnej chaos z toho vybrat to co fakt potrebujes
    23.5.2010 20:29 buff | skóre: 10 | blog: buff
    Rozbalit Rozbalit vše Re: Perl a rozdělení textu
    A co vlastně potřebuješ? :-) Jen to, co je mezi dvojtečkami a zároveň číslo? Nebo...?
    23.5.2010 21:14 buff | skóre: 10 | blog: buff
    Rozbalit Rozbalit vše Re: Perl a rozdělení textu

    Kdyžtak toto:

    $cislosmajlu = "---:3434: dasdas :2343:dasd a :5678:adasd dsadas:43587:aaaaaaa:23456879:";
    map {print "$_\n"} grep {m/[0-9]+/} split(':', $cislosmajlu);
    wamba avatar 23.5.2010 20:29 wamba | skóre: 38 | blog: wamba
    Rozbalit Rozbalit vše Re: Perl a rozdělení textu
    no teoreticky by šlo

    $cislosmajlu = "---:3434: dasdas :2343:dasd a :5678:adasd dsadas:43587:aaaaaaa:23456879:";

    while ( $cislosmajlu =~ /(:([0-9]+):)+/g ) { print $1 ;}

    This would have been so hard to fix when you don't know that there is in fact an easy fix.
    wamba avatar 23.5.2010 20:50 wamba | skóre: 38 | blog: wamba
    Rozbalit Rozbalit vše Re: Perl a rozdělení textu
    popřípadě
    
    my $cislo_smajlu
        = "---:3434: dasdas :2343:dasd a :5678:adasd dsadas:43587:aaaaaaa:23456879:";
    
    foreach my $cislo (
        $cislo_smajlu =~ m/(?: :( [0-9]+ ): )+/xg
        ) {
            print "$cislo ";
    }
    
    This would have been so hard to fix when you don't know that there is in fact an easy fix.
    23.5.2010 21:09 LuRy | skóre: 12
    Rozbalit Rozbalit vše Re: Perl a rozdělení textu
    jo diky moc , jeslit bych te mohl pozadat vysvetlil bys mi ty znaky za a pres / ? m/ /xg hledal sem to ale poradny vysvetleni nebo prehled vsech sem nenasel pouzivam /i nebo bez pismen jinak ti davam bod diky moc
    wamba avatar 23.5.2010 21:21 wamba | skóre: 38 | blog: wamba
    Rozbalit Rozbalit vše Re: Perl a rozdělení textu
    teď jsem si všiml že tam mám závorku zbytečnou (nechal jsem se unést vaším řešením) stačí:

    m/:( [0-9]+ ):/xg

    m je tam více méně zbytečný, muselo by tam být v případě např:

    m{ :( [0-9]+ ): }xg

    x umožňuje (pro přehlednost) vkládat do regulárního výrazu mezery a g je "global" tedy najdi všechny výrazy nejen první
    This would have been so hard to fix when you don't know that there is in fact an easy fix.
    Řešení 2× (misch, buff)
    23.5.2010 22:06 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: Perl a rozdělení textu
    Jo, ale nepoužil bych to ve while, ale prostě
    @smajly = (text =~ /:([0-9]+):/g);
    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.