LINUX.ORG.RU

awk


0

0

Подскажите пожалуйста как в awk выглядит альтернатива для sed'овских \N в gsub()'е?

И еще как делать not(regexp) в sed или awk? интересует использование в стиле:

s/ !regexp regexp !regexp regexp / \2 \4 /g

Упростил (выкинул \(\) и т.п.) для большей читабельности

PS Может быть awk или sed все равно.

dissident ★★
() автор топика
Ответ на: комментарий от dissident

comp.lang.awk там много иногда проскакиевает всяких фишек прикольных.

vilfred ☆☆
()
Ответ на: комментарий от dissident

>s/ !regexp regexp !regexp regexp / \2 \4 /g

Если ничего не путаю, то: s/[^regexp] regexp [^regexp] regexp/ \2 \4 /g

Одним словом, крышка вначале означает начало строки, а если она находится в начале квадратных скобок, то как раз означает отрицание.

php-coder ★★★★★
()
Ответ на: комментарий от php-coder

Путаешь.

=== Cut ===
`[LIST]'
`[^LIST]'
     Matches any single character in LIST: for example, `[aeiou]'
     matches all vowels.  A list may include sequences like
     `CHAR1-CHAR2', which matches any character between (inclusive)
     CHAR1 and CHAR2.

     A leading `^' reverses the meaning of LIST, so that it matches any
     single character _not_ in LIST.  To include `]' in the list, make
     it the first character (after the `^' if needed), to include `-'
     in the list, make it the first or last; to include `^' put it
     after the first character.
=== Cut ===

Мне бы бы !regexp а не !a и !b и !c.

Нету чтоли. :\

Ведь сгенерировать автомат для невыражения регулярного при наличии автомата для выражения регулярного - это две линии кода. :\

dissident ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.