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

    Byl vydán Debian GNU/Hurd 2025. Jedná se o port Debianu s jádrem Hurd místo obvyklého Linuxu.

    Ladislav Hagara | Komentářů: 0
    dnes 02:44 | Komunita

    V sobotu 9. srpna uplynulo přesně 20 let od oznámení projektu openSUSE na konferenci LinuxWorld v San Franciscu. Pokuď máte archivní nebo nějakým způsobem zajímavé fotky s openSUSE, můžete se o ně s námi podělit.

    lkocman | Komentářů: 2
    9.8. 21:11 | Nová verze

    Byl vydán Debian 13 s kódovým názvem Trixie. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 4
    9.8. 15:55 | Zajímavý software

    WLED je open-source firmware pro ESP8266/ESP32, který umožňuje Wi-Fi ovládání adresovatelných LED pásků se stovkami efektů, synchronizací, audioreaktivním módem a Home-Assistant integrací. Je založen na Arduino frameworku.

    Indiánský lotr | Komentářů: 0
    8.8. 15:33 | Nová verze

    Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.8.

    Ladislav Hagara | Komentářů: 8
    8.8. 14:22 | IT novinky

    Herní studio Hangar 13 vydalo novou Mafii. Mafia: Domovina je zasazena do krutého sicilského podsvětí na začátku 20. století. Na ProtonDB je zatím bez záznamu.

    Ladislav Hagara | Komentářů: 1
    8.8. 13:22 | IT novinky

    Operátor O2 má opět problémy. Jako omluvu za pondělní zhoršenou dostupnost služeb dal všem zákazníkům poukaz v hodnotě 300 Kč na nákup telefonu nebo příslušenství.

    Ladislav Hagara | Komentářů: 8
    8.8. 05:55 | IT novinky

    Společnost OpenAI představila GPT-5 (YouTube).

    Ladislav Hagara | Komentářů: 2
    8.8. 05:00 | Nová verze

    Byla vydána (𝕏) červencová aktualizace aneb nová verze 1.103 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.103 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    7.8. 17:33 | IT novinky

    Americký prezident Donald Trump vyzval nového generálního ředitele firmy na výrobu čipů Intel, aby odstoupil. Prezident to zdůvodnil vazbami nového šéfa Lip-Bu Tana na čínské firmy.

    Ladislav Hagara | Komentářů: 10
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (46%)
     (20%)
     (4%)
     (6%)
     (3%)
     (1%)
     (1%)
     (18%)
    Celkem 321 hlasů
     Komentářů: 23, poslední 4.8. 13:01
    Rozcestník

    Dotaz: když jsou čísla na obtíž

    14.3.2011 20:57 jaromir.kopravy
    když jsou čísla na obtíž
    Přečteno: 270×
    Dobrý den, potřebuji zpracovat rozsáhlou databázi číselných hodnot a textových řetězců. Proto bych to nějak rád zautomatizoval, například sedem.

    Jak mohu nahradit všechna racionální čísla (desetinná část je za tečkou) v databázi (resp. textovém souboru) za, například, znak "x")?

    vstup: 555.32 nejaky text 2616486 nejaky text -868451 nejaky text

    vystup: x nejaky text x nejaky text x nejaky text

    A ještě jeden dotaz, v databázi jsou souřadnice bodů (bohužel ne vždy jako číslice, ale jako libolná změť čehokoliv), jako příklad A[0,1] B[3,x] C[nezname_souradnice]. Šlo by nějakou posloupností klasických bash nástrojů dojít k tomuto (oznaceni zacatku a konce napriklad retezci "souradnice" a "konec")?

    vystup: A[0,1] nejaky text B[3,x] nejaky text C[nezname_souradnice]

    vstup: souradnice[0,1]konec nejaky text souradnice[3,x]konec nejaky text souradnice[nezname_souradnice]konec

    Děkuji za všechny nápady a návrhy, jak dojít ke kýženému výsledku.

    Odpovědi

    14.3.2011 22:07 ____ | skóre: 15 | blog: _
    Rozbalit Rozbalit vše Re: když jsou čísla na obtíž

    Jen přispěju nějakými těmi regexy pro sed.

    1. sed s/-\{,1\}[0-9]\{1,\}\.\{,1\}[0-9]*/x/g
    2. sed s/[A-Z]\(\[[^\]]\]\)/souradnice\1konec/g

    Neověřoval jsem správnost. Raději bych to vůbec ještě přepsal v AWK nebo Perl, protože je ještě nutné něco doplnit, aby se nanahrazovala čísla obsažená v textové části, pokud tam vůbec nějaká jsou, ale nechce se mi brouzdat po dokumentaci.

    14.3.2011 22:26 NN
    Rozbalit Rozbalit vše Re: když jsou čísla na obtíž
    Ten prvni:
    sed 's/[+-]\?[0-9]\{1,7\}[.]\?[0-9]\{1,3\}\?/x/g'
    Vsechny vyskyty retezcu /g ktere muzou zacinat + nebo - nasleduje 1 az 7 cifer dale muze byt tecka a muze nasledovat dalsich 1 az 3 cifer.

    Ten druhy:
    sed 's/[A-Z]\[/souradnice\[/g'
    sed 's/\]/\]konec/g'
    Vsechny vyskyty retezcu, ktere zacinaji velkym pismenem a otevyraci hranatou zavorkou nahrad retezcem souradnice a otevyraci zavorkou.

    Vsechny vyskyty retezce, ktery obsahuje hranatou uzavyraci zavorkou nahrad uzavyraci hranatou zavorkou a retezcem lkonce.

    Asi by se oboji dalo vylepsit, ale oboji funguje.. NN

    14.3.2011 23:08 jaromir.kopravy
    Rozbalit Rozbalit vše Re: když jsou čísla na obtíž
    Děkuji za odpovědi, regulární výrazy řeší můj problém, až na jednu věc --- velká a malá písmena (akceptuje i ta malá při [A-Z]):

    ----------------------------------------------------------------------------------------

    test: echo "A[1,2] B[3,x] C[souradnice]" | sed 's/[A-Z]\[/souradnice\[/g';

    výstup: souradnice[1,2] souradnice[3,x] souradnice[souradnice]

    ----------------------------------------------------------------------------------------

    test: echo "A[1,2] b[3,x] C[souradnice]" | sed 's/[A-Z]\[/souradnice\[/g';

    výstup: souradnice[1,2] souradnice[3,x] souradnice[souradnice]

    ----------------------------------------------------------------------------------------

    Zkoušel jsem vícero způsobů kombinace malých a velkých písmen a bash mi nedokáže rozeznat malá a velká písmena. Můžete mi, prosím, poradit, kde je problém???
    14.3.2011 23:36 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: když jsou čísla na obtíž
    Problém může vzniknout pokud vaše locales (příkaz locale) mají LC_COLLATE takové, že řazení velkých/malých písmen je (nepříklad) aAbBcC, potom A-Z zahrnuje velká i malá písmena (krom malého a).

    Demo:
    
    bash$ locale | grep LC_COLLATE
    LC_COLLATE="cs_CZ.UTF-8"
    
    bash$ echo "a[1,2] b[3,x] C[souradnice]" | sed 's/[A-Z]\[/souradnice\[/g';
    a[1,2] souradnice[3,x] souradnice[souradnice]
    
    bash$ echo "A[1,2] Z[3,x] C[souradnice]" | sed 's/[A-z]\[/souradnice\[/g';
    souradnice[1,2] Z[3,x] souradnice[souradnice]
    
    Řešení odolné proti různým řazením:
    echo "A[1,2] b[3,x] C[souradnice]" | sed 's/[[:upper:]]\[/souradnice\[/g';

    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.