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í
×
    včera 23:49 | Zajímavý článek

    Farid Abdelnour se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 26.08.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.

    Ladislav Hagara | Komentářů: 1
    včera 17:33 | Zajímavý článek

    Bylo vydáno nové číslo hackerského magazínu tmp.0ut: Volume 5.

    Ladislav Hagara | Komentářů: 0
    včera 01:44 | Nová verze

    Byla vydána nová stabilní verze 8.2 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 152. Přehled novinek i s náhledy v příspěvku na blogu.

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

    Byla vydána nová stabilní verze 4.0 svobodného multiplatformního softwaru pro editování a nahrávání zvukových souborů Audacity (Wikipedie). S rozhraním přepsaným do Qt. Přehled novinek také na YouTube. Ke stažení je oficiální AppImage. Zatím starší verze Audacity lze instalovat také z Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 1
    3.9. 16:55 | IT novinky

    NVIDIA kupuje Hugging Face za 12,93 miliardy dolarů.

    Ladislav Hagara | Komentářů: 3
    3.9. 15:44 | IT novinky

    Předobjednat si lze nový jednodeskový počítač Arduino VENTUNO Q s předinstalovaným Ubuntu. S 16 GB LPDDR5 a 64 GB eMMC. Pro lokální LLM, agentní AI, počítačové vidění, robotiku…

    Ladislav Hagara | Komentářů: 0
    3.9. 13:00 | Zajímavý software

    Hexpair není nejlepší HEX editor na světě a ani se o to nesnaží. Zato je k dispozici kdykoliv a kdekoliv – všude tam, kde máte svůj Vim. Vznikl jako hobby projekt před pár měsíci a dospěl do stavu, kdy by mohl být užitečný širší komunitě. Přepnout do HEX režimu se dá i uprostřed rozdělané práce: Soubor, který už máte otevřený běžným vim file.md, jedním příkazem přepnete do HEX editoru a dalším příkazem ho můžete vrátit zpět do textu. Kurzor přitom

    … více »
    Cohen | Komentářů: 0
    3.9. 01:55 | Nasazení Linuxu

    CERN dlouhodobě používal vlastní sestavení RHEL, ze kterého přešel na CentOS Stream. Federico Vaga a Nikos Tsipinakis ale nyní v přednášce na MiniDebConf Winterthur 2026 popisují plán probíhajícího přechodu na Debian pro řízení akcelerátorů. Důvodem k opuštění CentOS Stream jsou zachování zpětné kompatibility se starším hardwarem, kterou Red Hat narušuje, když tlačí sestavení balíčků pro novější verze architektury (x86-64), a nedostatečné nástroje pro sestavování vlastních balíčků a repozitářů.

    |🇵🇸 | Komentářů: 18
    3.9. 01:44 | Nová verze

    UZDoom (Wikipedie), tj. fork GZDoom, byl vydán ve verzi 5.0.0. Videopředstavení na YouTube. Podrobný přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 0
    2.9. 16:11 | Nová verze

    Příručka Linux From Scratch pro sestavení základního linuxového systému byla aktualizována v pravidelném půlročním termínu. Vydání 13.1 shrnuje přes 40 nových verzí balíčků a několik patchů. Navazující příručka Beyond Linux From Scratch s recepty pro sestavení dalších knihoven a aplikací zatím vydána nebyla, ačkoliv vývojová verze stále dostává aktualizace. Lze je číst online nebo stáhnout v HTML či PDF.

    |🇵🇸 | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (3%)
     (20%)
     (29%)
     (7%)
     (6%)
     (2%)
     (14%)
     (21%)
    Celkem 2580 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Dotaz: Perl a uninitialized value

    David Watzke avatar 2.12.2006 13:39 David Watzke | skóre: 74 | blog: Blog... | Praha
    Perl a uninitialized value
    Přečteno: 382×
    Zdravím. Mám v Perlu takovou funkci:
    sub check_pkgname($) {
    	($_[0] =~ m/^\w+(|(\-|\w)*\w)(|\/\w+(|(\-|\w)*\w))$/)
    	? $pkg = $_[0]
    	: die "Not a valid package name: $_[0]!";
    }
    a teď když spustím check_pkgname("něco"), tak to proběhne. Když to regexpu neodpovídá, tak vypíše:
    Not a valid package name: (whatever)! at ./test.pl line 7.
    Proč tam píše "at ./test.pl line 7"? To nechci.

    Ovšem horší je tohle: jakmile se pokusím o check_pkgname($_[0]), tak hodí:
    Use of uninitialized value in pattern match (m//) at ./test.pl line 7.
    Use of uninitialized value in concatenation (.) or string at ./test.pl line 7.
    Not a valid package name: ! at ./test.pl line 7.
    Napadlo mě zkusit ještě check_pkgname(int $_[0]), to hodí:
    Use of uninitialized value in int at ./test.pl line 12.
    Co dělám špatně?
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon

    Odpovědi

    David Watzke avatar 2.12.2006 13:53 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Perl a uninitialized value
    Když to regexpu neodpovídá, tak vypíše:
    Not a valid package name: (whatever)! at ./test.pl line 7.
    Proč tam píše "at ./test.pl line 7"? To nechci.
    Sorry, nevěděl jsem, že je to běžný chování funkce die(), jsem trouba :-D
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    4.12.2006 09:13 mlz
    Rozbalit Rozbalit vše Re: Perl a uninitialized value
    V pripade, ze je u die "\n", tak at xxx.pl line N nevypise tedy die "Not a valid package name: (whatever)!\n";
    David Watzke avatar 4.12.2006 14:36 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Perl a uninitialized value
    Aha, díky.
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    David Watzke avatar 2.12.2006 22:43 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Perl a uninitialized value
    Zjevně jsem dělal pěknou blbost. Ve funkci je asi nutný přiřadit si argumenty do proměnných pomocí shiftu, že?
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    3.12.2006 00:15 amnesiac
    Rozbalit Rozbalit vše Re: Perl a uninitialized value
    Prirazovani paramteru do promennych s tim nema nic spolecneho. Zrejme volas check_pkgname($_[0]), kdyz $_[0] obsahuje nedefinovanou hodnotu.

    Pokud volam $pkgname="nazev-1-2/balicku-xyz-321"; check_pkgname($pkgname);, tak mi to probehne korektne.

    Btw. moc jsem nepochopil proc je v tom regularnim vyrazu ^\w+(|(\-|\w)*\w)(|\/\w+(|(\-|\w)*\w))$ to \w za (\-|\w)* ;-)

    David Watzke avatar 3.12.2006 00:18 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Perl a uninitialized value
    Btw. moc jsem nepochopil proc je v tom regularnim vyrazu ^\w+(|(\-|\w)*\w)(|\/\w+(|(\-|\w)*\w))$ to \w za (\-|\w)* ;-)
    Protože chci aby to prošlo jen tehdy, když string bude končit na '\w' a ne '-'.
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    4.12.2006 11:15 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: Perl a uninitialized value
    A nebylo by čitelnější
    /^\w(?:[-\w]*\w)?(?:\/\w(?:[-\w]*\w)?)?$/
    To (?:) místo () je jen kvůli rychlosti - neplní se $n registry. Pokud by ty slova nikdy nebyli méně než dvouznakové, tak by se dokonce dalo napsat
    /^\w[-\w]*\w(?:\/\w[-\w]*\w)?$/
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    David Watzke avatar 4.12.2006 14:41 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Perl a uninitialized value
    Díky, určitě bylo. Co je $n registr?
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    4.12.2006 15:00 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: Perl a uninitialized value
    Viz perlvar
           $<digits>
                   Contains the subpattern from the corresponding set of capturing
                   parentheses from the last pattern match, not counting patterns
                   matched in nested blocks that have been exited already.
                   (Mnemonic: like \digits.)  These variables are all read-only
                   and dynamically scoped to the current BLOCK.
    
    Jinak \1..\9 by se mělo používat jen v m-regexpu nebo na levé straně (první parametr) s-regexpu.
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.

    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.