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 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
    19.5. 21:00 | IT novinky

    Dnes a zítra probíhá vývojářská konference Google I/O 2026. Sledovat lze na YouTube a na síti 𝕏 (#GoogleIO).

    Ladislav Hagara | Komentářů: 0
    19.5. 19:00 | Nová verze

    Canonical vydal Ubuntu Core 26. Vychází z Ubuntu 26.04 LTS a podporováno bude 15 let. Ubuntu Core je minimální neměnný operační systém určený pro vestavěné systémy.

    Ladislav Hagara | Komentářů: 0
    19.5. 16:22 | Nová verze

    Bylo vydáno OpenBSD 7.9. Po dlouhé době opět se songem: Diamond in the Rough.

    Ladislav Hagara | Komentářů: 0
    19.5. 16:00 | Nová verze

    Byl vydán Mozilla Firefox 151.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 151 bude brzy k dispozici také na Flathubu a Snapcraftu.

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

    Dotaz: PERL - odstranění duplicit v poli a jejich spočítání

    5.12.2010 13:36 Pirkil
    PERL - odstranění duplicit v poli a jejich spočítání
    Přečteno: 599×
    Ahoj, učím se základy programování v PERLu a mám problém. Potřebuju napsat program na počítání písmen v textovém souboru. Došel jsem do fáze, kdy mám všechna písmena uložená v poli @abcd. (Je jich mnoho a opakují se.) Nyní potřebuju z pole dostat frekvenci jednotlivých písmen a uložit každé písmeno s jeho frekvencí do hashe. (Můžu to sice udělat tak, že dám vypsat prvky pole po řádcích, uložím výstup programu do textového souboru a potom zadám v shellu:

    sort soubor.txt | uniq -c

    ale, já bych chtěl posléze setřídit klíče hashe a udělat to celé v Perlu.)

    Díky moc za pomoc!

    Řešení dotazu:


    Odpovědi

    5.12.2010 14:17 Ondřej Kopka | skóre: 19 | blog: ondrejk
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    to by melo resit neco v tomto smyslu:
    my $hash = {};
    foreach my $item (@array) {
     $hash->{$item}->{count}++;
    }
    
    Řešení 1× (buff)
    5.12.2010 14:18 Ondřej Kopka | skóre: 19 | blog: ondrejk
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    vlastne by stacilo i $hash->{$item}++
    wamba avatar 6.12.2010 18:20 wamba | skóre: 38 | blog: wamba
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    nemá to být $hash{$item}++ ?
    This would have been so hard to fix when you don't know that there is in fact an easy fix.
    wamba avatar 6.12.2010 18:22 wamba | skóre: 38 | blog: wamba
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    odpovím si sám nemá, muselo by být my %hash místo my $hash
    This would have been so hard to fix when you don't know that there is in fact an easy fix.
    Řešení 1× (Pirkil (tazatel))
    5.12.2010 14:23 Ondřej Kopka | skóre: 19 | blog: ondrejk
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    5.12.2010 19:35 Pirkil
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    Nakonec jsem to udělal pomocí funkce map. Četl jsem o ní už dřív, ale nevěděl jsem, jak se používá. Souvisí to s tím, že moc neznám funkci operátoru $_ . Experimentální cestou jsem na to přišel. :) Díky za pomoc!
    5.12.2010 21:50 Jirka P
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    Když už si hrát s mapem, proč to neudělat takto:
    my %counts=(map {($_, 0)} @arr);
    keys %counts;
    6.12.2010 01:21 Pirkil
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    ...chtěl jsem říct funkci speciální proměnné... :)

    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.