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

    Společnost Proton AG stojící za Proton Mailem a dalšími službami přidala do svého portfolia AI asistenta Lumo.

    Ladislav Hagara | Komentářů: 4
    dnes 12:22 | IT novinky

    Amazon koupil společnost Bee zaměřenou na nositelnou osobní AI aktuálně nabízející náramek Pioneer (YouTube) s mikrofony zaznamenávající vše kolem [𝕏, LinkedIn].

    Ladislav Hagara | Komentářů: 5
    dnes 04:33 | IT novinky

    Společnost Teufel nedávno představila svůj první open source Bluetooth reproduktor MYND.

    Ladislav Hagara | Komentářů: 7
    včera 20:00 | Nová verze

    Byla vydána verze 4.2 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Využíván je Free Pascal Compiler (FPC) 3.2.2.

    Ladislav Hagara | Komentářů: 0
    včera 19:33 | IT novinky

    Anton Carniaux, právní zástupce Microsoft France, pod přísahou: Microsoft nemůže garantovat, že data z EU nepředá do USA bez EU souhlasu, musí dodržovat americké zákony.

    Ladislav Hagara | Komentářů: 25
    včera 15:33 | Nová verze

    Byl vydán Mozilla Firefox 141.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Lokální AI umí uspořádat podobné panely do skupin. Firefox na Linuxu využívá méně paměti. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 141 je již k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    21.7. 22:44 | Bezpečnostní upozornění

    NÚKIB upozorňuje na kritickou zranitelnost v SharePointu. Jedná se o kritickou zranitelnost typu RCE (remote code execution) – CVE-2025-53770, která umožňuje neautentizovaný vzdálený přístup a spuštění kódu, což může vést k úplnému převzetí kontroly nad serverem. Zranitelné verze jsou pouze on-premise verze a to konkrétně SharePoint Server 2016, 2019 a Subscription Edition. SharePoint Online (Microsoft 365) není touto zranitelností ohrožen.

    Ladislav Hagara | Komentářů: 4
    21.7. 21:00 | IT novinky

    Společnost Valve zpřísnila pravidla pro obsah, který je možné distribuovat ve službě Steam. Současně řadu her ze Steamu odstranila. V zásadách a pravidlech přibylo omezení 15: Obsah, který by mohl porušovat pravidla a normy stanovené zpracovateli plateb a souvisejícími sítěmi platebních karet a bankami nebo poskytovateli připojení k internetu. Sem spadají zejména určité druhy obsahu pouze pro dospělé.

    Ladislav Hagara | Komentářů: 0
    21.7. 13:33 | Komunita

    Dle analytics.usa.gov je za posledních 90 dnů 6,2 % přístupů k webových stránkám a aplikacím federální vlády Spojených států z Linuxu.

    Ladislav Hagara | Komentářů: 0
    20.7. 17:44 | Zajímavý článek

    Jak si zobrazit pomocí Chrome a na Chromiu založených webových prohlížečích stránky s neplatným certifikátem? Stačí napsat thisisunsafe.

    Ladislav Hagara | Komentářů: 3
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (27%)
     (24%)
     (3%)
     (7%)
     (4%)
     (2%)
     (3%)
     (29%)
    Celkem 90 hlasů
     Komentářů: 13, poslední dnes 17:42
    Rozcestník

    Dotaz: Split v PERL

    8.9.2009 14:34 Saky
    Split v PERL
    Přečteno: 552×
    Zdravím..
    Potřeboval bych poradit, jak v PERL rozdělit řádek a načíst slova do samostatných proměnných...
    Mám URL ze souborem http://www.i-netportal.cz/input.txt . Ten obsahuje dejme tomu 4 slova, oddělená mezerami. Pak mám v PERL něco takového, aby mi na příkaz zobraz vypsal obsah souboru:
     
     if ($arg =~ /!zobraz/i) {   
     my $url = 'http://www.i-netportal.cz/input.txt';
          use LWP::Simple;
     my $content = get $url;
     die "Couldn't get $url" unless defined $content;
        
     print "Soubor obsahuje slova: $content\n";
     }
     
    Potřeboval bych však doplnit pravděpodobně funkcí split rozdělení na jednotlivá slova, abych mohl následně použít výstup "!Soubor obsahuje: $1slovo, dále za ním $2slovo,.... " Tedy vypisovat je jednotlivě.
    Zkoušel jsem něco jako ($slovo1, $slovo2, $slovo3) = split(" ", $content); , avšak neúspěšně.
    Díky za každou radu :-)

    Řešení dotazu:


    Odpovědi

    Řešení 1× (saky)
    8.9.2009 15:06 ams
    Rozbalit Rozbalit vše Re: Split v PERL

    Funguje to presne tak jak jste to napsal, mate ale chybu ve vypisu: misto $slovo1 pouzivate $1slovo atd. Jinou moznosti je pouzit pole misto skalaru a napsat neco takoveho:

    @slovo = split(" ", $content);

    print "Soubor obsahuje: $slovo[0], dale za nim $slovo[1],  pak  $slovo[2] a nakonec $slovo[3].\n";

    Řešení 1× (saky)
    8.9.2009 15:14 Saky
    Rozbalit Rozbalit vše Re: Split v PERL

     Tak mám pravděpodobně chybu ve formátu, jelikož :

     

            if ($arg =~ /!zobraz/i) {   

        my $url = 'http://www.i-netportal.cz/input.tx';

          use LWP::Simple;

      my $content = get $url;

      die "Couldn't get $url" unless defined $content;

       @slovo = split(" ", $content);

         print "Soubor obsahuje: $slovo[0], dale za nim $slovo[1],  pak  $slovo[2] a nakonec $slovo[3].\n";  

         }

    Nefunguje.. :(. Kde může být chyba?

     

    8.9.2009 15:53 voda | skóre: 28
    Rozbalit Rozbalit vše Re: Split v PERL
    Není to chybějícím t v http://www.i-netportal.cz/input.txt. Jinak vypisuje to něco? Mě to funguje správně.
    8.9.2009 16:00 Saky
    Rozbalit Rozbalit vše Re: Split v PERL

     Písmenko se ztratilo při CTRLC+C / V :-)

    Obsah souboru mi to vypíše v pořádku, ale jakmile vložím funkci split, aplikace ani nenaběhne, bez jakékoliv chyby. Možná je chyba už někde výše, ale kód je poměrně dlouhý...

    Zvláštní, že bez toho bez problému.. :( Právě jsem si myslel, zda je funkce vložena na správném místě, jelikož to spadne při vložení v jakémkoliv formátu..

    Řešení 1× (saky)
    8.9.2009 16:09 voda | skóre: 28
    Rozbalit Rozbalit vše Re: Split v PERL
    Zkuste tam přidat:
    use strict;
    use warnings;
    use diagnostics;
    
    jestli to něco nevypíše pak. Popřípadě kód zjednodušit tak, ať se chyba hledá lépe.
    8.9.2009 16:10 ams
    Rozbalit Rozbalit vše Re: Split v PERL

    Nemate nahodou v tom souboru use strict? Zkuste misto @slovo = split ...    napsat  my @slovo = split ...;

    8.9.2009 16:33 Saky
    Rozbalit Rozbalit vše Re: Split v PERL

     Tak to je ono :-)

    Supeeeer, funguje :-)

    Bez problému to třídí slova dle obou verzí.

    Děkuji moc za rady :)

    8.9.2009 18:03 voda | skóre: 28
    Rozbalit Rozbalit vše Re: Split v PERL
    Tak při takovéto chybě mi to vypisuje: Global symbol "@slovo" requires explicit package name at ./tmp/perl.pl line 10
    8.9.2009 16:23 Saky
    Rozbalit Rozbalit vše Re: Split v PERL

     Tak jsem zkoušel jednak zapnout podrobný výpis chyb, tam se až na pár drobností nic neprojeví.

    Při zadání funkce split se aplikace vůbec nespustí, tudíž žádná chyba:(.

    Zkoušel jsem i na hradit uvozovky lomítky, avšak také bez úspěchu...

    Zkrátit jej asi nedokáži, teprve s tím experimentuji a asi bych jej nedokázal natolik očesat, abych chybu našel.. :(

    Pokud by byl někdo ochoten pomoci úpravou, jistě bych mohl i já něčím přispět (FTP prostor, SQl databázi...)

    Už si opravdu nevím rady :)

    8.9.2009 16:09 Chulda | skóre: 20
    Rozbalit Rozbalit vše Re: Split v PERL
    Ted jsem se nekde docetl, ze na parsovani mezery jsou potreba lomitka (regularni vyraz) namisto uvozovek split(/ /, $content);
    8.9.2009 16:17 ams
    Rozbalit Rozbalit vše Re: Split v PERL

    Je pravda, ze split ocekava jako prvni argment regexp, ale parametr " " je zvlastni pripad, ktery funguje jinak nez / /. Prectete si perldoc -f split:
    As a special case, specifying a PATTERN of space (' ') will split on white space just as "split" with no arguments does. Thus, "split(' ')" can be used to emulate awk's default behavior, whereas "split(/ /)" will give you as many null initial fields as there are leading spaces.

    22.12.2010 10:35 apokalypso77
    Rozbalit Rozbalit vše Re: Split v PERL
    Dobrý den, mám prolém rozdělit @list na jednotlivé části! píše mi to do příkazového řádku neco mezera neco, ale nevýhodou je že je ten počet pokaždý jiný proto si ten počet nemohu definovat a potřeboval bych, aby to něco bylo pokaždý na samotném řádku

    v přikazovým řádku to vypadá takto @neco neco neco neco +neco @neco takže to nemu rozdělit podle nějakýho znamínka nic poradil by mi někdo ? když tak pls na email

    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.