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 11:22 | IT novinky

    Organizace IuRe (Iuridicum Remedium) varuje před návrhem, který představilo belgické předsednictví Rady EU. Populární služby jako Messenger, WhatsApp nebo Signal by dle něj bylo možné plně používat až po odsouhlasení kontroly komunikace. Ta by měla zamezit šíření dětské pornografie. Podle IuRe by však taková kontrola přinesla hlavně závažný dopad na soukromí uživatelů.

    Ladislav Hagara | Komentářů: 3
    dnes 11:11 | Nová verze

    NumPy (Wikipedie), tj. knihovna pro Python pro vědecké výpočty, byla po 18 letech vydána v nové major verzi 2.0.0. Přehled novinek v poznámkách k vydání. Důležité informace v průvodci migrací.

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

    Vývojáři postmarketOS vydali verzi 24.06 tohoto před sedmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell, Phosh, KDE Plasma a Sxmo. Aktuálně podporovaných zařízení je 50.

    Ladislav Hagara | Komentářů: 0
    včera 21:55 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE.

    Ladislav Hagara | Komentářů: 0
    14.6. 12:11 | IT novinky

    Google Blog ČR informuje, že mobilní aplikaci Gemini a NotebookLM lze používat už také v Česku.

    Ladislav Hagara | Komentářů: 18
    14.6. 11:33 | Nová verze

    Byla vydána nová major verze 8 duálně licencovaného open source frameworku JUCE (Wikipedie, GitHub) pro vývoj multiplatformních audio aplikací.

    Ladislav Hagara | Komentářů: 0
    14.6. 11:11 | IT novinky

    Od 18. června bude možné předobjednat notebook DC-ROMA RISC-V LAPTOP II od společnosti DeepComputing s osmijádrovým 64-bit RISC-V AI CPU a s předinstalovaným Ubuntu.

    Ladislav Hagara | Komentářů: 2
    13.6. 23:55 | Nová verze

    Byla vydána verze 1.79.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání na GitHubu. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    13.6. 14:33 | Zajímavý článek

    Byly zveřejněny výsledky průzkumu (infografika) mezi uživateli FreeBSD.

    Ladislav Hagara | Komentářů: 0
    13.6. 13:22 | IT novinky

    Na konferenci DevConf.CZ 2024 je na stánku Furi Labs prezentován linuxový telefon FuriPhone FLX1. Jeho cena 499 dolarů.

    Ladislav Hagara | Komentářů: 19
    Rozcestník

    Dotaz: PHP: preg_replace a strtoupper

    27.3.2023 20:19 tom
    PHP: preg_replace a strtoupper
    Přečteno: 362×
    Zdravim,

    mam blok textu, ktery potrebuji prezentovat zakaznikovi

    A nekde v tom textu se nachazi MAC adresa ve formatu: a1b2-c3d4-e5f6

    Jenze zakaznik ji chce videt jako A1:B2:C3:D4:E5:F6

    Za vydatneho googlovani jsem vykresal tento kod:

    $text = preg_replace('/([a-z0-9]{2})([a-z0-9]{2})-([a-z0-9]{2})([a-z0-9]{2})-([a-z0-9]{2})([a-z0-9]{2})/', '\1:\2:\3:\4:\5:\6', $text);

    Ale jak provest strtoupper() pouze u teto MAC adresy a ne u celeho textu?

    Dekuji

    Odpovědi

    27.3.2023 20:44 tom
    Rozbalit Rozbalit vše Re: PHP: preg_replace a strtoupper
    Tak zaprve "[a-f0-9]", samozrejme, sorry

    a zadruhe jsem to zatim vyresil "na prase":

    $text = preg_replace('/([a-f0-9]{2})([a-f0-9]{2})-([a-f0-9]{2})([a-f0-9]{2})-([a-f0-9]{2})([a-f0-9]{2})/', '<span style="text-transform:uppercase;">\1:\2:\3:\4:\5:\6</span>', $text);

    Ale tohle detem neukazujte ;-)

    27.3.2023 20:58 tttttttttttttt
    Rozbalit Rozbalit vše Re: PHP: preg_replace a strtoupper
    Jde to pomocí preg_replace_callback:
    <?php
    
    $subject = 'mac address a1b2-c3d4-e5f6';
    $text = preg_replace_callback(
        '/([a-z0-9]{2})([a-z0-9]{2})-([a-z0-9]{2})([a-z0-9]{2})-([a-z0-9]{2})([a-z0-9]{2})/',
        function ($matches) {
            return strtoupper($matches[0]);
        },
        $subject
    );
    $text = preg_replace('/([a-zA-Z0-9]{2})([a-zA-Z0-9]{2})-([a-zA-Z0-9]{2})([a-zA-Z0-9]{2})-([a-zA-Z0-9]{2})([a-zA-Z0-9]{2})/', '\1:\2:\3:\4:\5:\6', $text); 
    echo $text // mac address A1:B2:C3:D4:E5:F6
    ?>
    Za domácí úkol to můžeš vylepšit, udělat z toho jen jeden regexp a omezit ty výčty tak, aby neobsahovaly nic navíc.
    27.3.2023 21:11 tom
    Rozbalit Rozbalit vše Re: PHP: preg_replace a strtoupper
    Diky!

    O preg_replace_callback() slysim poprve

    Jeden regexp bych z toho nedelal. Libi se mi to takto rozepsane. A ano, malinko ucesat by se to dalo

    Jeste jednou diky, a mejte se!

    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.