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 03:55 | Komunita

    sudo-rs, tj. sudo a su přepsáné do programovacího jazyka Rust, nahradí v Ubuntu 25.10 klasické sudo. V plánu je také přechod od klasických coreutils k uutils coreutils napsaných v Rustu.

    Ladislav Hagara | Komentářů: 1
    včera 22:11 | Nasazení Linuxu

    Fedora se stala oficiální distribucí WSL (Windows Subsystem for Linux).

    Ladislav Hagara | Komentářů: 1
    včera 13:22 | IT novinky

    Společnost IBM představila server IBM LinuxONE Emperor 5 poháněný procesorem IBM Telum II.

    Ladislav Hagara | Komentářů: 2
    včera 04:55 | Nová verze

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

    Ladislav Hagara | Komentářů: 1
    včera 00:33 | Komunita

    Podpora Windows 10 končí 14. října 2025. Připravovaná kampaň Konec desítek (End of 10) může uživatelům pomoci s přechodem na Linux.

    Ladislav Hagara | Komentářů: 28
    5.5. 23:22 | Pozvánky

    Již tuto středu proběhne 50. Virtuální Bastlírna, tedy dle římského číslování L. Bude L značit velikost, tedy více diskutujících než obvykle, či délku, neboť díky svátku lze diskutovat dlouho do noci? Bude i příští Virtuální Bastlírna virtuální nebo reálná? Nejen to se dozvíte, když dorazíte na diskuzní večer o elektronice, softwaru, ale technice obecně, který si můžete představit jako virtuální posezení u piva spojené s učenou

    … více »
    bkralik | Komentářů: 1
    5.5. 22:33 | IT novinky

    Dle plánu dnes končí služba Skype. Uživatelé mohou pokračovat v Microsoft Teams.

    Ladislav Hagara | Komentářů: 1
    5.5. 21:44 | IT novinky

    Český statistický úřad rozšiřuje Statistický geoportál o Datový portál GIS s otevřenými geografickými daty. Ten umožňuje stahování datových sad podle potřeb uživatelů i jejich prohlížení v mapě a přináší nové možnosti v oblasti analýzy a využití statistických dat.

    Ladislav Hagara | Komentářů: 2
    5.5. 12:33 | Zajímavý projekt

    Kevin Lin zkouší využívat chytré brýle Mentra při hraní na piano. Vytváří aplikaci AugmentedChords, pomocí které si do brýlí posílá notový zápis (YouTube). Uvnitř brýlí běží AugmentOS (GitHub), tj. open source operační systém pro chytré brýle.

    Ladislav Hagara | Komentářů: 1
    5.5. 12:11 | Pozvánky

    Jarní konference EurOpen.cz 2025 proběhne 26. až 28. května v Brandýse nad Labem. Věnována je programovacím jazykům, vývoji softwaru a programovacím technikám.

    Ladislav Hagara | Komentářů: 0
    Jaký filesystém primárně používáte?
     (57%)
     (1%)
     (8%)
     (21%)
     (4%)
     (2%)
     (3%)
     (1%)
     (1%)
     (3%)
    Celkem 541 hlasů
     Komentářů: 22, poslední 5.5. 10:06
    Rozcestník

    Dotaz: Bordel v regulárních výrazech ve Vimu

    10.6.2010 17:13 dejvik | skóre: 12 | blog: vysatost
    Bordel v regulárních výrazech ve Vimu
    Přečteno: 296×

    Ahoj, regularní výrazy(regexpy) jsou super a snažím se je využívat, když to jde (moc často to není:)). Ale trošku mě rozčílila menší nekonzistence v escapování speciálních znaků.

    Příklad:
    /[b-f]/
    /[^cs]ow/

    Doposud v pořádku. Znaky [^-] jsou speciální znaky pro regexpy. Když je budu chtít použít doslova dám před ně lomítko.

    Aa tady to začíná:
    /o\+i/

    '+' je zase znak pro regexpy se spec. významem, ale musím před něho dát lomítko. Proč?

    A hnusný mix:
    /[a-c]t*o\+i/

    Jak mám přátelé poznat, před co dát lomítko a před co ne? Má to souvislost s rozšířenými regexpy? Jestli jo, tak nejde to přepnout do konzistentního stavu a udělat z toho bordelu něco normálního? Mě nezajímá, které regexpy používám. Buď budu dávat všude lomítko nebo ne. Jestli to má nějaký vyšší význam, rád se poučím.

    Pěkný tutoriál, ze kterého vycházím: http://vim.runpaint.org/searching/creating-regular-expressions/

    Díky a přeju hezký den:)

    Odpovědi

    10.6.2010 17:32 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Bordel v regulárních výrazech ve Vimu
    Jak mám přátelé poznat, před co dát lomítko a před co ne?

    Zkušeností? Používejte reg. výrazy častěji... Není to tak složité, u základních reg. výrazů se escapují závorky () {} a u sed a vim navíc ještě +. To plus je asi nejvíc matoucí... I já na něj občas zapomenu.
    \(foo\)*\(bar\)\+\(baz\)\{3\}
    vs
    (foo)*(bar)+(baz){3}
    
    Rozšířené regulární výrazy jsou co do escapování trochu hezčí, jejich používání ve vimu by asi šlo pomocí pluginu eregex.vim (nezkoušel jsem) nebo něčeho podobného.
    10.6.2010 17:35 dejvik | skóre: 12 | blog: vysatost
    Rozbalit Rozbalit vše Re: Bordel v regulárních výrazech ve Vimu
    díky za odpověď

    Pamatovat si () {} + není tak hrozné, ale proč mě tak trápí?
    10.6.2010 20:22 dejvik | skóre: 12 | blog: vysatost
    Rozbalit Rozbalit vše Re: Bordel v regulárních výrazech ve Vimu

    Teď se dívám na eregex.vim a perldo a rubydo vypadají velice dobře. Škoda jen, že tam není ukázané, jak se s tím vyhledává v textu (ne nahrazuje), abych si mohl hezky zvýraznit hledaná slova. Ale to už chci asi moc :-)

    10.6.2010 17:35 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Bordel v regulárních výrazech ve Vimu
    Nedobře se na to díváte :-) V syntaxi regulárních výrazů, kterou popisujete, není „+“ znak se speciálním významem, ale naopak je to zcela obyčejné plus. Vedle toho pak existuje sekvence „\+“, která má speciální význam. A jak to máte poznat? Jednoduše se podíváte do nápovědy. Tam bude určitě napsáno, že speciální znak „[“ má nějakou funkci, a speciální sekvence „\+“ má zase jinou funkci. A všechno ostatní, co tam není vyjmenované, jsou obyčejné znaky, které se použijí tak, jak je napíšete.
    10.6.2010 17:55 dejvik | skóre: 12 | blog: vysatost
    Rozbalit Rozbalit vše Re: Bordel v regulárních výrazech ve Vimu
    Už se dívám do helpu. Ale stejně mi nic nevysvětlili. Prostě Používej lomítko pro tamto a šmitec.
    Teď vím, že mám dávat lomítko před ( ) { | + = a character classes, když chci speciální význam. Pořád mi přijde, že v tom je bordel.
    10.6.2010 18:07 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Bordel v regulárních výrazech ve Vimu
    Není v tom bordel. Existují sekvence znaků se speciálním významem, například „[“, „\{“, „\+“. Nesmíte se na to lomítko tak upínat – prostě může být součástí některých sekvencí se speciálním významem. Takže to není „lomítko před ( ) { | + … když chci mít speciální význam“. Správně to je „sekvence \( \) \{ \| \+ … mají speciální význam“.
    10.6.2010 18:44 dejvik | skóre: 12 | blog: vysatost
    Rozbalit Rozbalit vše Re: Bordel v regulárních výrazech ve Vimu
    Dá se na to takhle dívat. Ale vyžaduje to si více pamatovat. Budu to muset asi skousnout.
    Petr Bravenec avatar 11.6.2010 13:12 Petr Bravenec | skóre: 43 | blog: Bravenec
    Rozbalit Rozbalit vše Re: Bordel v regulárních výrazech ve Vimu
    Nekousat. Pamatovat.
    Petr Bravenec - Hobrasoft s.r.o.

    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.