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 04:33 | Nová verze

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za květen (YouTube).

    Ladislav Hagara | Komentářů: 0
    včera 11:22 | Bezpečnostní upozornění

    Úřad pro ochranu osobních údajů řeší desítky stížností na jednotné měsíční hlášení zaměstnavatele, které stát spustil počátkem dubna. Systém, jenž má firmám odlehčit od desítek formulářů, nejenže výrazně zatížil jejich účetní oddělení, ale docházelo v něm i k únikům osobních dat zaměstnanců k firmám, kde nepracovali. Podle ministerstva práce a sociálních věcí stála za problémem technická chyba. „Incident se týkal několika stovek

    … více »
    Ladislav Hagara | Komentářů: 4
    včera 10:46 | Nová verze

    Byla vydána (𝕏, Bluesky) nová verze 22.0.0 open source webového aplikačního frameworku Angular (Wikipedie). Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Nová verze

    Vim Classic byl vydán ve verzi 8.3. Drew DeVault oznámil tento fork editoru Vim (verze 8.2.0148, tj. těsně před zavedením Vim9 skriptování) v březnu letošního roku. Důvodem forku bylo, že vývojáři editorů Vim a Neovim začali při vývoji využívat LLM.

    Ladislav Hagara | Komentářů: 5
    včera 03:44 | Komunita

    Open source konference DevConf.CZ 2026 proběhne 18. a 19. června v Brně na FIT VUT. Publikován byl program a spuštěna byla registrace.

    Ladislav Hagara | Komentářů: 0
    3.6. 19:44 | Nová verze

    Společnost JetBrains uvolnila verzi 2 svého open-source velkého jazykového modelu (LLM) pro vývojáře Mellum.

    Ladislav Hagara | Komentářů: 0
    3.6. 14:44 | IT novinky

    Probíhá konference Microsoft Build 2026. Microsoft představuje své novinky: kvantový čip Majorana 2, Surface Laptop Ultra a Surface RTX Spark Dev Box s NVIDIA RTX Spark, Intelligent Terminal, Coreutils for Windows (fork Rust Coreutils), AI modely MAI, AI agenta Scout, platformu pro agent-first zařízení Project Solara, …

    Ladislav Hagara | Komentářů: 0
    3.6. 12:44 | Nová verze

    Google Chrome 149 byl prohlášen za stabilní. Nejnovější stabilní verze 149.0.7827.53 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    3.6. 10:55 | Nová verze

    Pluto.jl, reaktivní notebook pro programovací jazyk Julia, dospěl do verze 1.0.

    Ladislav Hagara | Komentářů: 4
    2.6. 13:44 | Nová verze

    Byla vydána nová verze 12.0.0 vizuálního programovacího jazyka Snap! (Wikipedie) inspirovaného jazykem Scratch (Wikipedie). Přehled novinek na GitHubu.

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


    Dotaz: Jak na kontrolu znaků

    24.2.2013 18:31 Martin
    Jak na kontrolu znaků
    Přečteno: 334×
    Dobrý večer, nemá někdo bash podmínku-script který dokáže zjistit, jestli daný řetězec obsahuje pouze znaky malé znaky bez diakritiky a čísla? Nesmí obsahovat háčky, čárky, velké znaky, mezery, tečky, limítka, podtržítka, pomlčky prostě nic, jen abcdefghijklmnoprstvwxyz0123456789 Může někdo znalý pomoci? Děkuji Martin

    Odpovědi

    24.2.2013 18:35 chrono
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    if [[ "retazec" =~ ^[a-z0-9]*$ ]]
    then
        echo "retazec je OK"
    fi
    
    24.2.2013 20:51 potato
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    if [[ "retazec" =~ '^[a-z0-9]*$' ]]
    paranoi není nikdy dost.
    24.2.2013 22:18 rubicon
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    Což o to, zdravá opatrnost není na škodu, ale v tomhle případě radíte špatně.

    "Any part of the pattern may be quoted to force it to be matched as a string."

    Pokud $retazec neobsahuje identickou posloupnost znaků mezi uvozovkami, bude návratová hodnota 1, což tazatel zajisté nechtěl.
    24.2.2013 22:52 potato
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    Mea culpa, [[ ... ]] je svérázná konstrukce, uvnitř níž neprobíhají některé expanze. Navíc neexistuje způsob, jak zapsat totéž pomocí test, takže jsme se opět syntakticky přiblížili perlu :(
    25.2.2013 08:09 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    Navíc neexistuje způsob, jak zapsat totéž pomocí test, takže jsme se opět syntakticky přiblížili perlu :(

    Jste si jistý, že neexistuje? Co třeba

      if [ -z "${str//[[:alnum:]]}" ]; then
          ...
      fi
    

    Mimochodem, "[0-9a-z]" u mne v locale cs_CZ.UTF-8 zahrnuje všechna malá i velká písmena kromě ž, Z a Ž. Pochybuji, že to je to, co měl tazatel na mysli.

    25.2.2013 09:22 chrono
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    [[:alnum:]] zase zahŕňa aj veľké písmená. :) (takže správna kombinácia bude [[:lower:][:digit:]] )
    25.2.2013 09:24 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    Jak je zmíněno v příspěvku, na který odpovídáte, [a-z] také - tedy aspoň většinu z nich.
    25.2.2013 15:03 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    Správná kombinace to nebude, protože malá písmena s nabodeníčky nejsou o nic menší, než malá písmena bez nich, takže [:lower:] zahrnuje i ty háčkované a čárkované, kroužkované nevyjímaje, a to jsem zatím jen u češtiny či slovenčtiny, takže si ještě račme přenastaviti locale :-)
    25.2.2013 20:11 potato
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    Myslel jsem test na regulární výraz obecně, který je v bashi možný pouze pomocí [[ ... ]].

    Lokalizace je samozřejmě při skriptování mor, protože příkazy mají zřídka jasnou hranici mezi výstupem pro člověka a výstupem pro další zpracování, a jediná pomoc je automaticky export LC_ALL=C v každém skiptu, který čte výstup čehokoli nebo pracuje se znaky.
    25.2.2013 14:56 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    Ono je vůbec otázka proč to psát pomocí test, když stačí grep.
    if grep -q "^[[:lower:][:digit:]]*$" <<<"123abc"; then
      echo "ok..."
    fi
    A v tom [[ ]] nemusíte dávat do uvozovek ani ten $retezec, když jsme u toho, takže ano, při porovnávání s test lze očekávat spíš odlišnosti než podobnosti.
    25.2.2013 15:33 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    Ono je vůbec otázka proč to psát pomocí test, když stačí grep

    Příkaz test je v bashi builtin, grep ne. Tedy aspoň zatím ne. :-)

    25.2.2013 15:07 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Jak na kontrolu znaků
    retezec="abcdefghijklmnoprstvwxyz0123456789"
    
    LC_ALL=C
    
    if [[ $retazec =~ ^[[:lower:][:digit:]]*$ ]]
    then
        echo "retazec je OK"
    fi
    a případně vrátit locale zpět.

    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.