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 04:44 | IT novinky

    Společnost Meta na dvoudenní konferenci Meta Connect 2025 představuje své novinky. První den byly představeny nové AI brýle: Ray-Ban Meta (Gen 2), sportovní Oakley Meta Vanguard a především Meta Ray-Ban Display s integrovaným displejem a EMG náramkem pro ovládání.

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

    Po půl roce vývoje od vydání verze 48 bylo vydáno GNOME 49 s kódovým názvem Brescia (Mastodon). S přehrávačem videí Showtime místo Totemu a prohlížečem dokumentů Papers místo Evince. Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    včera 16:22 | Nová verze

    Open source softwarový stack ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán ve verzi 7.0.0. Přidána byla podpora AMD Instinct MI355X a MI350X.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | Nová verze

    Byla vydána nová verze 258 správce systému a služeb systemd (GitHub).

    Ladislav Hagara | Komentářů: 5
    včera 15:11 | Nová verze

    Byla vydána Java 25 / JDK 25. Nových vlastností (JEP - JDK Enhancement Proposal) je 18. Jedná se o LTS verzi.

    Ladislav Hagara | Komentářů: 0
    včera 14:44 | Humor

    Věra Pohlová před 26 lety: „Tyhle aféry každého jenom otravují. Já bych všechny ty internety a počítače zakázala“. Jde o odpověď na anketní otázku deníku Metro vydaného 17. září 1999 na téma zneužití údajů o sporožirových účtech klientů České spořitelny.

    Ladislav Hagara | Komentářů: 4
    včera 11:33 | Zajímavý článek Ladislav Hagara | Komentářů: 0
    16.9. 21:44 | Nová verze

    Byl vydán Mozilla Firefox 143.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Nově se Firefox při ukončování anonymního režimu zeptá, zda chcete smazat stažené soubory. Dialog pro povolení přístupu ke kameře zobrazuje náhled. Obzvláště užitečné při přepínání mezi více kamerami. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 143 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    16.9. 17:22 | Nová verze

    Byla vydána betaverze Fedora Linuxu 43 (ChangeSet), tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 21. října.

    Ladislav Hagara | Komentářů: 0
    16.9. 12:22 | Nová verze

    Multiplatformní emulátor terminálu Ghostty byl vydán ve verzi 1.2 (𝕏, Mastodon). Přehled novinek, vylepšení a nových efektů v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (47%)
     (53%)
     (0%)
     (7%)
     (13%)
     (7%)
     (20%)
     (7%)
     (13%)
    Celkem 15 hlasů
     Komentářů: 1, poslední včera 13:49
    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: 299×

    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: 67 | 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: 67 | 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.