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 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ářů: 0
    dnes 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
    dnes 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ářů: 4
    dnes 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
    včera 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
    včera 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
    včera 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
    včera 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
    2.6. 11:44 | IT novinky

    Počítačovou hru Gravity Circuit (ProtonDB) lze do 14. června do 19:00 získat na Steamu zdarma. Napořád.

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


    Dotaz: perl - slovo rozděleno mezerami

    25.2.2008 21:19 motorcb | skóre: 12
    perl - slovo rozděleno mezerami
    Přečteno: 390×
    Zdravim. Zpracovavam text,ktery je obcas psany zpusobem, ze mezi kazde pismeno ve slove se dava mezera.

    $promena="Vitejne na mem webu. Jmenuji se F R A N T A a timto Vas zdravim pres internet!";

    Jde mi o to aby se vsechny slova,ktera jsou delsi nez 5 pismen i s mezerami( A N D -3pismena,2mezery) predelali na slovo bez mezer :)

    $promena="Vitejne na mem webu. Jmenuji se FRANTA a timto Vas zdravim pres internet!";

    Nevedel by nekdo jak na to? Uz to zkousim tyden a zadny vysledek. Dik za jakykoliv nakopnuti :)

    Odpovědi

    25.2.2008 22:49 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: perl - slovo rozděleno mezerami
    a) nájdený výraz bude "f r a n t a a"
    b) s/(\w(?:\s+\w)+)/join '', split ' ', $1/ge
    25.2.2008 23:06 maleprase | skóre: 28
    Rozbalit Rozbalit vše Re: perl - slovo rozděleno mezerami
    a v kotli sem nasel kocku => avkotlisemnaselkocku
    25.2.2008 23:10 Dunric | skóre: 21
    Rozbalit Rozbalit vše Re: perl - slovo rozděleno mezerami
    ad b) s/(?:^|\s)(\w\s){5,}/' ' . (join "", (split " ",$&)) . " "/eg
    In the garden sleeps a messenger ·
    25.2.2008 23:26 Dunric | skóre: 21
    Rozbalit Rozbalit vše Re: perl - slovo rozděleno mezerami
    s/(?:^|\s)(\w\s){4,}(?:\w|$)(?/' ' . (join '', (split ' ',$&)) . ' '/eg
    In the garden sleeps a messenger ·
    25.2.2008 23:01 Petr Holík
    Rozbalit Rozbalit vše Re: perl - slovo rozděleno mezerami
    $promena ~= s/(\w) (\w) (\w)/$1$2$3/g #odstrani mezery ze vsech slov co maji 3 pismena

    $promena ~= s/(\w) (\w) (\w) (\w)/$1$2$3$4/g #odstrani mezery ze vsech slov co maji 4 pismena

    analogicky dale. Slo by to napsat i jednim vyrazem, ale vyzadovalo by to by pokrocilou znalost PCRE a trosku ladeni, takze Vam doporuciji spise dopsat vyrazy v podobnem duchu pro slova do maximalniho poctu pismen. Pokud se tedy nejedna o nejake dlouhodobejsi reseni :) pak se samozrejme vyplani si precist o regulernich vyrazech a dat si tu praci to odladit.
    26.2.2008 07:21 pht
    Rozbalit Rozbalit vše Re: perl - slovo rozděleno mezerami

    No, ve skutecnosti to neni tak tezke s temu "pokrocilymi znalostmi". Neni ani potreba provadet cachry se splitem, pokud si problem rozdelite na dve casti:

    1. Najit vhodny match toho prostrkaneho slova. Uz tu neco padlo, trochu jsem to otunil: /([A-Z](?: [A-Z]){2,})(?= |$)/. Vysvetleni:

      Prvni vnejsi zavorka je ten nas match (to prostrkane slovo). Zacina na velke pismeno a za tim pokracuje mezera a opet velke pismeno a to cele aspon dvakrat, aby byla splnena podminka peti znaku. Symboly ?: na zacatku zavorky zajistuji, aby se zavorka neulozila jako $2 atd. Posledni zavorka je positive lookahead assertion, tzn. prvni zavorka se matchuje pouze pokud za ni nasleduje to co je v te druhe, cili dalsi mezera nebo konec retezce (abychom nenasli neco jako A S D Fghj). Nicmene tim ze to je jen assertion tak to tu pripadnou mezeru neukousne, jak by to udelala normalni zavorka ( |$).

    2. Odstranit z toho mezery (zvladne kazdy: s/ //g)

    Pak uz staci jen tyto dva kroky vhodne zkombinovat.

    perl -pe 's/([A-Z](?: [A-Z]){2,})(?= |$)/do {$_ = $1; s, ,,g; $_;}/eg'
    26.2.2008 09:09 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: perl - slovo rozděleno mezerami
    aj vám (ako všetkým, aj mne) chýba kontrola nonword pred prvým ((?<!\w)
    positive look after ((?= |$)) by som nahradil negative ((?!\w)) ... negative považuje za zhodu aj to, ak reťazec nepokračuje ($, resp ^)

    s/((?<!\w)\w(?:\s\w){5,}(?!\w))/../ge

    26.2.2008 15:22 pht
    Rozbalit Rozbalit vše Re: perl - slovo rozděleno mezerami
    jo, taky moznost. jen bych dodal k tomu cislu 5 ze puvodne chtel autor pet znaku vcetne mezer, coz prave dava tu moji dvojku.

    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.