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í
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
dnes 16:00 | Nová verze

Byla vydána verze 0.98 svobodného nelineárního video editoru Pitivi. Z novinek lze zmínit například přizpůsobitelné klávesové zkratky. Videoukázka práce s nejnovější verzí Pitivi na YouTube.

Ladislav Hagara | Komentářů: 0
dnes 15:00 | Zajímavý software

Stop motion je technika animace, při níž je reálný objekt mezi jednotlivými snímky ručně upravován a posouván o malé úseky, tak aby po spojení vyvolala animace dojem spojitosti. Jaký software lze pro stop motion použít na Linuxu? Článek na OMG! Ubuntu! představuje Heron Animation. Ten bohužel podporuje pouze webové kamery. Podpora digitálních zrcadlovek je začleněna například v programu qStopMotion.

Ladislav Hagara | Komentářů: 1
včera 21:21 | Nová verze Ladislav Hagara | Komentářů: 0
včera 11:44 | Zajímavý projekt

Na Indiegogo byla spuštěna kampaň na podporu herní mini konzole a multimediálního centra RetroEngine Sigma od Doyodo. Předobjednat ji lze již od 49 dolarů. Požadovaná částka 20 000 dolarů byla překonána již 6 krát. Majitelé mini konzole si budou moci zahrát hry pro Atari VCS 2600, Sega Genesis nebo NES. Předinstalováno bude multimediální centrum Kodi.

Ladislav Hagara | Komentářů: 0
včera 00:10 | Nová verze

Byla vydána verze 4.7 redakčního systému WordPress. Kódové označením Vaughan bylo vybráno na počest americké jazzové zpěvačky Sarah "Sassy" Vaughan. Z novinek lze zmínit například novou výchozí šablonu Twenty Seventeen, náhledy pdf souborů nebo WordPress REST API.

Ladislav Hagara | Komentářů: 4
6.12. 12:00 | Zajímavý projekt

Projekt Termbox umožňuje vyzkoušet si linuxové distribuce Ubuntu, Debian, Fedora, CentOS a Arch Linux ve webovém prohlížeči. Řešení je postaveno na projektu HyperContainer. Podrobnosti v často kladených dotazech (FAQ). Zdrojové kódy jsou k dispozici na GitHubu [reddit].

Ladislav Hagara | Komentářů: 27
6.12. 11:00 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostní chybě CVE-2016-8655 v Linuxu zneužitelné k lokální eskalaci práv. Chyba se dostala do linuxového jádra v srpnu 2011. V upstreamu byla opravena minulý týden [Hacker News].

Ladislav Hagara | Komentářů: 2
5.12. 22:00 | Komunita

Přibližně před měsícem bylo oznámeno, že linuxová distribuce SUSE Linux Enterprise Server (SLES) běží nově také Raspberry Pi 3 (dokumentace). Obraz verze 12 SP2 pro Raspberry Pi 3 je ke stažení zdarma. Pro registrované jsou po dobu jednoho roku zdarma také aktualizace. Dnes bylo oznámeno, že pro Raspberry Pi 3 je k dispozici také nové openSUSE Leap 42.2 (zprávička). K dispozici je hned několik obrazů.

Ladislav Hagara | Komentářů: 6
5.12. 06:00 | Zajímavý software

OMG! Ubuntu! představuje emulátor terminálu Hyper (GitHub) postavený na webových technologiích (HTML, CSS a JavaScript). V diskusi k článku je zmíněn podobný emulátor terminálu Black Screen. Hyper i Black Screen používají framework Electron, stejně jako editor Atom nebo vývojové prostředí Visual Studio Code.

Ladislav Hagara | Komentářů: 50
5.12. 06:00 | Zajímavý článek

I letos vychází řada ajťáckých adventních kalendářů. QEMU Advent Calendar 2016 přináší každý den nový obraz disku pro QEMU. Programátoři se mohou potrápit při řešení úloh z kalendáře Advent of Code 2016. Kalendáře Perl Advent Calendar 2016 a Perl 6 Advent Calendar přinášejí každý den zajímavé informace o programovacím jazyce Perl. Stranou nezůstává ani programovací jazyk Go.

Ladislav Hagara | Komentářů: 10
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (23%)
 (29%)
 (7%)
 (5%)
 (3%)
Celkem 792 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: Perl - vymaz prazdnych hodnot pole

30.10.2006 17:52 michalst | Praha
Perl - vymaz prazdnych hodnot pole
Přečteno: 155×
Zdravim, mam v perlu pole @addr kde jsou ulozeny vyextrahovane email adresy, jenze to pole obsahuje jeste cca 20 prazdnych zaznamu (prin @addr vypise neprazdne zaznamy(7), ale pri $#addr to da hodnotu 26). Kdyz rucne pres splice(@addr,0,20) ty prazdne zaznamy vymazu je to ok. Jenze ja nikdy nebudu vedet, kolik tech prazdnych zaznamu tam bude a v dalsim kroku potrebuju pozivat ty adresy v promennych $addr[0] - $addr[6]. Diky Michal

Odpovědi

30.10.2006 20:23 Dunric | skóre: 21
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
Nevím jestli jsem zcela správně pochopil zadání, ale jestli jde o odstranění prvků pole s "prázdnými" hodnotami/řetězci, tak by to mohlo jít třeba takhle:
my $index = 0;
while ( $index <= $#addr ) {
  if ( $addr[$index] =~ /^\s*$/ ) {
    splice( @addr, $index, 1 );
  } else {
    $index++;
  }
}
In the garden sleeps a messenger ·
30.10.2006 20:38 happy barney | skóre: 34 | blog: dont_worry_be_happy
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
@addr = grep $_, @addr;
30.10.2006 20:49 Petr
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
Nulovy zaznam neni prazdny, takze radeji @addr = grep {$_ ne q()} @addr;
30.10.2006 20:49 Petr
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
Nulovy zaznam neni prazdny, takze radeji @addr = grep {$_ ne q()} @addr;
30.10.2006 23:08 happy barney | skóre: 34 | blog: dont_worry_be_happy
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
to už radšej
@addr = grep defined && length, @addr;
31.10.2006 06:57 Tomáš Janeček | skóre: 12
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
A nebylo by lepsi se postarat o to, aby se do toho pole vubec zadne prazdne zaznamy nedostaly? Jak je tam nacitas? neslo by uz pri nacitani pomoci neceho jako
next if(/^\s*$/);
odfiltrovat prazdne zaznamy? Nebudes muset to pole cele znovu prochazet...
Kdyz napises, jak je nacitas, urcite neco vymyslime :)
Něco děsně chytrýho a vtipnýho
31.10.2006 12:26 michalst | Praha
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
Takhle --> jde tam je hlavicka mailu:
@mail=<>;
$i=0;
foreach $radka(@mail){     #vim,ze by slo foreach $radka(<>)
    $vstup[$i]=$radka    #v poli uchovam puvodni hlavicku mailu
   if ($radka =~/^To:|(>,|>\s)$/){    #nahrubo vyberu radky, kde se vyskytují adresy
       if ($radka =~/^To:/){
          $adr[$i]=substr($radka,3);    #oriznu To:
       }else{
          $adr[$i]=$radka;    #jinak nactu vsechny radky vyhovující prvnímu if
       }
       }
       $i++;
}
potom odfiltruju vsechy hlavicky From: Message-ID...... a oriznu prazdne znaky z adres (odsazení.. atd).
ve finale jsem udelal prazdne radky pres :
$a=grep /^\S/, @addr;    #coz mi spocita kolik je tam plnych radku
@addr=reverse(@addr);
splice(@addr, $a)    #cimz jsem to pole zredukoval jen na plne radky no a pak uz jen vezmu puvodni hlavicku a pridam k ni pomoci for cyklu X-Original-To: + $addr[0-x].
Cela tahle kasparina vznikla tim, ze mame u providera mailovy kos a nejakym zahadnym zpusobem nedokaze poslat nejakou jednoznacne identifikujici hlavicku s urcenim adresata (X-Original-To nebo neco podobneho) a veskere prijemce posila v To: --> cimz me dostava do situace, kdy mi dojde treba 5 mailu, kteri maji v To stejne udelane prijemce no a me to procmail nezkousne a vsech 5 mailu doruci tomu, kdo je z tech 5ti prijemcu na prvnim miste. Diky za kazdou radu Michal
31.10.2006 12:33 happy barney | skóre: 34 | blog: dont_worry_be_happy
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
$a=grep /^\S/, @addr;    #coz mi spocita kolik je tam plnych radku
@addr=reverse(@addr);
splice(@addr, $a)
môžete nahradiť jednoduchým
@addr = reverse grep /^\S/, @addr;
navyše nebude robiť chyby v pri existencii prázdneho prvku uprostred poľa.

Btw, hlavička mailu môže byť rozdelená na viacero riadkov

31.10.2006 12:40 michalst | Praha
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
Prima napad, a to zahrnuje i splice? Michal Ps: S perlem se peru od minuleho patku, tak prosim o strpeni...
31.10.2006 12:42 happy barney | skóre: 34 | blog: dont_worry_be_happy
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
splice nepotrebujete, pretože grep samotný vyhodí prvky, ktoré neskôr vyhadzujete použitím splice.
31.10.2006 12:46 happy barney | skóre: 34 | blog: dont_worry_be_happy
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
btw, zjednodušená verzia toho vášho:
@vystup = @mail = <>;
@adr = map { s/^To://; $_ } grep /^To:|(>[,\s])$/, @mail;
31.10.2006 12:48 michalst | Praha
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
Takhle nejak si predstavuju perl - kod....ach jo, zase neco noveho.... Michal
31.10.2006 12:46 michalst | Praha
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
Mate pravdu (uz jsem to vyzkousel). Ono by se v tom kodu naslo vice jinych drobnosti predchoziho typu, ze? Diky Michal
31.10.2006 12:49 happy barney | skóre: 34 | blog: dont_worry_be_happy
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
jj, to máte pravdu :-)
Ak chcete robiť nejakú šialenú analýzu mailu, odporúčam vám pozrieť si modul Mail::Audit a jeho pluginy (výstup search-u)
31.10.2006 13:00 michalst | Praha
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
Diky podivam se na to, ale nechci delat analyzy mailu, jenom portebuju z To: vyselektovat vsechny p rijemce - v pripade, ze jich je tam vic - ulozit to do nejake promenne a tu potom vlozit zpatky do puvodni hlavicky s jednoznacnou identifikaci prijemce treba pomoci X-Original-To. Nic jineho nez perl me nenapadl - mozna jeste tak Bash. Michal
31.10.2006 13:08 happy barney | skóre: 34 | blog: dont_worry_be_happy
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
pozrite sa na tú knižnicu, dobrá knižnica nikdy neuškodí :-)
31.10.2006 13:14 b0rmann | skóre: 15 | Pardubice
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
Kdyz polozka neni prazdna, tak jeste neznamena ze je to k necemu pouzitelna mailova adresa. Udelal bych asi tak:
use Email::Valid;
@addr=grep defined, map {Email::Valid->address($_)?$_:undef} @addr;
--- Gott strafe Amerika
31.10.2006 13:24 happy barney | skóre: 34 | blog: dont_worry_be_happy
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
prečo grep a map, keď to grep zvládne sám ?
use Email::Valid;
@addr = grep { Email::Valid->address ($_) } @addr;
1.11.2006 09:14 michalst | Praha
Rozbalit Rozbalit vše Re: Perl - vymaz prazdnych hodnot pole
Všem děkuji za účast v diskusi aza projevenou trpělivost. Michal

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.