SED: vyhazování prázdných skupin

Tom Hudec Tom na ABBA.cz
Čtvrtek Únor 21 21:13:21 CET 2002


Matej Cepl wrote:

> On Wed, Feb 20, 2002 at 05:53:03PM +0100, Pavel Kankovsky wrote:
> 
>>Pred kulatymi zavorkami (oznacny ^) chybi backslashe.
>>Nicmene i tak to nebude fungovat na zacatku radky. To by to muselo
>>znit s/\(^\|[^!?]\){}``/\1``/g.
>>
> 
> Tohle je ono! Děkuji. Jenom jsem nepochopil, proč mám backslah i
> před |? Podle info grep a regex(7) (v info sed se o tom nic
> neříká) je ten znak neobackslahovaný. Jsou regex v sedu jiná než
> v grepu a jinde? Existuje dodělaná verze sed.info?


sed (grep) používá základní RE:

   In basic regular expressions the metacharacters `?', `+', `{', `|',
`(', and `)' lose their special meaning; instead use the backslashed
versions `\?', `\+', `\{', `\|', `\(', and `\)'.

Naopak rozšířené RE použijte u příkazu "grep -E" (či egrep). Zde
metaznaky bez předchozího '\' mají speciální význam.

-- 
Tom Hudec <Tom(at)ABBA.cz>, editor of Tom's ABBA pages http://ABBA.cz/

   .''`.  The box said Windows, NT or better, so I installed Linux. :-)
  : :' :
  `. `'   Debian GNU/Linux  http://www.debian.org/  http://www.debian.cz/
    `-    The Perfect OS - the most software, the most people



Další informace o konferenci Linux