abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 12:11 | IT novinky

    Digitální a informační agentura (DIA) oznámila (PDF, X a Facebook), že mobilní aplikace Portál občana je ode dneška oficiálně venku.

    Ladislav Hagara | Komentářů: 0
    dnes 05:11 | Komunita

    #HACKUJBRNO 2024, byly zveřejněny výsledky a výstupy hackathonu města Brna nad otevřenými městskými daty, který se konal 13. a 14. dubna 2024.

    Ladislav Hagara | Komentářů: 1
    včera 17:55 | IT novinky

    Společnost Volla Systeme stojící za telefony Volla spustila na Kickstarteru kampaň na podporu tabletu Volla Tablet s Volla OS nebo Ubuntu Touch.

    Ladislav Hagara | Komentářů: 3
    včera 17:44 | IT novinky

    Společnost Boston Dynamics oznámila, že humanoidní hydraulický robot HD Atlas šel do důchodu (YouTube). Nastupuje nová vylepšená elektrická varianta (YouTube).

    Ladislav Hagara | Komentářů: 0
    včera 15:11 | Nová verze

    Desktopové prostředí LXQt (Lightweight Qt Desktop Environment, Wikipedie) vzniklé sloučením projektů Razor-qt a LXDE bylo vydáno ve verzi 2.0.0. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 4
    včera 14:22 | IT novinky

    Nejvyšší soud podpořil novináře Českého rozhlasu. Nařídil otevřít spor o uchovávání údajů o komunikaci (data retention). Uvedl, že stát odpovídá za porušení práva EU, pokud neprovede řádnou transpozici příslušné směrnice do vnitrostátního práva.

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

    Minulý týden proběhl u CZ.NIC veřejný test aukcí domén. Včera bylo publikováno vyhodnocení a hlavní výstupy tohoto testu.

    Ladislav Hagara | Komentářů: 28
    včera 04:44 | Nová verze

    Byla vydána nová verze 3.5.0 svobodné implementace protokolu RDP (Remote Desktop Protocol) a RDP klienta FreeRDP. Přehled novinek v ChangeLogu. Opraveno bylo 6 bezpečnostních chyb (CVE-2024-32039, CVE-2024-32040, CVE-2024-32041, CVE-2024-32458, CVE-2024-32459 a CVE-2024-32460).

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

    Google Chrome 124 byl prohlášen za stabilní. Nejnovější stabilní verze 124.0.6367.60 přináší řadu oprav a vylepšení (YouTube). Podrobný přehled v poznámkách k vydání. Opraveno bylo 22 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    včera 02:22 | Nová verze

    Byla vydána nová verze 9.3 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Novinkou je vlastní repozitář DietPi APT.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (66%)
     (11%)
     (2%)
     (21%)
    Celkem 520 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: regexp

    2.4.2011 14:46 Kamil.Plech
    regexp
    Přečteno: 322×
    Dobrý den. Potřeboval bych poradit s regulárními výrazy. Jde mi o nahrazování znaků. Pořád se mi nedaří nahradit dolar/skupinu po sobe následujících dolarů ($/$$$) za &dolar; ... problémem je fakt, že vše je uzavřeno v dvou dalších dolarech, které nahradit nechci.

    Abych to lépe ukázal na příkladu:

    Vstup: $ahoj $$$Kamile$$$ jak se dneska mas???$

    Výstup: $ahoj &dolar;Kamile,&dolar; jak se dneska mas???$

    nebo

    Vstup: $josef byl $$toho$$ rana $ponekud$ neklidny$

    Výstup: $josef byl &dolar;toho&dolar; rana &dolar;ponekud&dolar; neklidny$

    Děkuji všem za všechny nápady a rady. Kamil.

    Odpovědi

    2.4.2011 15:38 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: regexp
    Chcete tedy nahradit všechny výskyty dolarů mezi prvním a posledním dolarem? Pokud používaná knihovna pro regulérní výrazy umí vyhlížení, použil bych takovouhle konstrukci pro vyhledání těch skupin znaků, které se mají nahradit:
    (?<=[^$]*$).*$+.*(?=$[^$]*)
    2.4.2011 19:16 l4m4
    Rozbalit Rozbalit vše Re: regexp
    Jinak je tu klasická varianta: nahradit první a poslední dolar něčím jiným (neexistuje-li žádný bezpečný znak použitelný coby náhrada, tak se musí požuít nějaké escapování), což lze snadno, pak nahradit ty zbývající, a nakonec zase ten první a poslední nahradit zpět.
    4.4.2011 14:45 ph0enix | skóre: 18 | Praha
    Rozbalit Rozbalit vše Re: regexp
    Nebo muzeme uvodni a koncovy '$' zahodit a po nahrazeni zbyvajicich opet pridat...
    4.4.2011 14:34 ph0enix | skóre: 18 | Praha
    Rozbalit Rozbalit vše Re: regexp
    Asi bych se to nesnazil udelat naraz, ale rozporcoval bych nejprve vstup podle vzoru $+ a nasledne ziskany seznam opet slozil s pozadovanym oddelovacem. V PERLu napriklad takto:
    @parts = split(/\$+/, $input);
    $output = '$' . join('&dolar;', @parts[1..$#parts-1]). '$';
    4.4.2011 16:14 ph0enix | skóre: 18 | Praha
    Rozbalit Rozbalit vše Re: regexp
    Mozne reseni v PERLu - hledam retezec jenz neobsahuje znak '$' nasledovany jednim ci sekvenci znaku '$' za niz nenasleduje konec retezce. Nalezeny text vratnim zpet a dolary nahradim textem '&dolar;'. Modifikator g zajisti nahrazeni vsech vyskytu. Uvadeny regexp akceptuje i stav kdy text konci vice nez jednim znakem '$'.
    $input =~ s/([^\$]+)\$+(?!$)/$1&dolar;/g;
    Pokud by se na vstupu objevil text ukonceny sekvenci dolaru, nebude tato nahrazena ale povazovana za ukonceni retezce a zachovana!

    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.