Portál AbcLinuxu, 27. dubna 2024 02:58


Dotaz: regularni vyraz

Pavel Stupka avatar 29.5.2004 16:43 Pavel Stupka | skóre: 8 | Sezimovo Ústi
regularni vyraz
Přečteno: 108×
Odpovědět | Admin
Zdarec, potreboval bych vedet jak muzu vytvorit regularni vyraz obsahujici tabulator? Jak muzu zapsat znak tabulatoru aniz bych musel ve svem skriptu opravdu jako soucast RE stisknout TAB a tak vytvorit znak tabulatoru?

chci toziz skript, ktery odstrani radky zacinajici # nebo bilym mistem a pak # tedy pred # smi byt pouze tabulatory a mezery
... sed '1,$s/^[        ]*#.*$//' ....
tohle je presne ono, akorat v hranatych zavorkach jsem musel stiskout TAB a mezeru cimz jsem urcil jake znaky mohou predchazet pred # ... Takze existuje nejaky znak ktery by nahradil ten tabulator?
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

29.5.2004 16:55 Petr
Rozbalit Rozbalit vše Re: regularni vyraz
Odpovědět | | Sbalit | Link | Blokovat | Admin
A co \t ?
29.5.2004 17:32 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: regularni vyraz
Je to ovšem rozšíření GNU sedu.
Pavel Stupka avatar 29.5.2004 18:02 Pavel Stupka | skóre: 8 | Sezimovo Ústi
Rozbalit Rozbalit vše Re: regularni vyraz
no prave :o(
29.5.2004 18:14 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: regularni vyraz
Na Linuxu je GNU sed.

Pokud chceš, aby to jelo na kdejakém topinkovači, tak tam holt musíš ten tabelátor napsat. Jediná opravud přenositelná konstruce je \n pro konec řádku.
29.5.2004 22:56 Beda
Rozbalit Rozbalit vše Re: regularni vyraz
Odpovědět | | Sbalit | Link | Blokovat | Admin
[[:space:]] - nejsou nahodou tridy i \t nikoliv v rozsirenem "gnu" ale v rozsirenem "posixu"? tusim, ze je to celkem pekne standardizovany aspon co jsem koukal na prepinace vlastnosti u regex a gawku... a na topinkovaci to nepojede snad nikdy
29.5.2004 23:50 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: regularni vyraz
Jo, v POSIXu to je, v různých starých unixových sedech to není ... a pojmenované znakové třídy závisí na locales(!) ... a v [[:space:]] jsou i věci jako form-feed a vertikální tabelátor ... takže to může být cesta nejmenšího odporu, OTOH na rozdíl od skutečného tabelátoru (topinkovač) a \t (GNU), které mají vady zjevné, se tohle může chovat záludně...
1.6.2004 22:34 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: regularni vyraz
Odpovědět | | Sbalit | Link | Blokovat | Admin
Jo, zapomněl jsem na starý trik bashe:
$'\t'
je taky tabelátor (\t expanduje shell, takže sed už uvidí opravdový tabelátor).
2.6.2004 00:22 Milan Roubal
Rozbalit Rozbalit vše Re: regularni vyraz
Odpovědět | | Sbalit | Link | Blokovat | Admin
Co je na zmacknuti TAB spatneho? Pokud potrebuji v shellu vlozit znak TAB, tak zmacknu CTRL^V a pak TAB a krasne se vlozi na radku jako znak.
2.6.2004 00:23 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: regularni vyraz
Není vidět.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.