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í
×
    včera 21:44 | IT novinky

    Oficiální český státní eshop s elektronickými dálničními známkami nově najdete na edalnice.gov.cz. Doména gov.cz jasně potvrzuje, že jste na oficiálním státním webu [𝕏].

    Ladislav Hagara | Komentářů: 2
    včera 14:22 | Nová verze

    Byla vydána nová verze 4.8.0 interaktivního shellu fish (friendly interactive shell, Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 2
    včera 12:00 | Nová verze

    Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem se nově stal čínský LineShine v Národním superpočítačovém centru v Šen-čenu (NSCS) s výkonem 2,198 exaFLOPS. Z prvního místa sesadil americký superpočítač El Capitan s výkonem 1,809 exaFLOPS. Nejvýkonnější český počítač C24 klesl na 215 místo. Karolina, GPU partition klesla na 249. místo a Karolina, CPU partition na 475. místo.

    … více »
    Ladislav Hagara | Komentářů: 3
    23.6. 21:00 | IT novinky

    Zemřel průkopník videoherní hudby Bobby Prince (Wikipedie). Složil hudbu pro hry Wolfenstein 3D, Doom, Doom II, Duke Nukem II a Duke Nukem 3D.

    Ladislav Hagara | Komentářů: 6
    23.6. 15:55 | IT novinky

    Počítačová hra Operace Flashpoint (Arma: Cold War Assault) od společnosti Bohemia Interactive slaví 25 let. Při této příležitosti bylo publikováno bezplatné hratelné Arma: Cold War Assault Remastered Demo a na GitHubu byly zveřejněny zdrojové kódy.

    Ladislav Hagara | Komentářů: 0
    23.6. 12:22 | IT novinky

    Na trh v České republice přichází HP EliteBoard G1a. Jde o plnohodnotný AI počítač integrovaný přímo do těla klávesnice, tedy zařízení, které na první pohled vypadá jako minimalistická klávesnice, ale ve skutečnosti nahrazuje klasickou počítačovou jednotku.

    Ladislav Hagara | Komentářů: 17
    23.6. 10:55 | Nová verze

    V lednu bylo oznámeno, že desktopové prostředí Xfce bude mít vlastní kompozitor pro Wayland s názvem xfwl4. O víkendu byla vydána první preview verze.

    Ladislav Hagara | Komentářů: 0
    22.6. 23:44 | Nová verze

    Minulý týden byl oficiálně vydán Android 17. Detaily na blogu a stránkách věnovaných vývojářům.

    Ladislav Hagara | Komentářů: 7
    22.6. 20:00 | IT novinky

    Dnes jde do prodeje zařízení Steam Machine. Steam Machine 512 GB za 1 039 EUR a Steam Machine 2 TB za 1 359 EUR. Do čtvrtka 25. června do 19:00 se lze zapsat na seznamy. Ty budou jednorázově náhodně slosovány, čímž bude určeno pořadí rezervací a čekacích listin.

    Ladislav Hagara | Komentářů: 20
    22.6. 14:44 | Nová verze

    Vývojáři OpenMW (Wikipedie) oznámili vydání verze 0.51.0 této svobodné implementace enginu pro hru The Elder Scrolls III: Morrowind. Přehled novinek v oznámení o vydání a také na YouTube a PeerTube.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (16%)
     (31%)
     (3%)
     (6%)
     (2%)
     (16%)
     (26%)
    Celkem 1978 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: 395×
    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.