И это всё МОЁ

Хочу убрать все AND кроме тех, что с # в строке типа:

 #AND bb AND bb AND

Тогда такая запись, даже с шаблоном

echo "#AND bb AND bb AND " | sed -e 's/\([^#]\)AND/\1UND/g'
#AND bb UND bb UND


а такая:

echo "#AND bb AND bb AND " | sed -e  's/\(\#AND.*\)AND\(.*\)/\1UND\2/g'
#AND bb AND bb UND

Требует сначала убирает один AND, а при повторном вызове sed второй.

При этом sed не против шаблонов. И модификатор g понимает. Но обходит строку как-то странно.

echo "#AND bb AND bb AND " | sed -e 's/\( \)AND\( \)/\1UND\2/g'
#AND bb UND bb UND
echo "#AND bb AND bb AND " | sed -e 's/\(.*\)AND\( \)/\1UND\2/g'
#AND bb AND bb UND
echo "#AND bb AND bb AND " | sed -e 's/\(\)AND\(.*\)/\1UND\2/g'
#UND bb AND bb AND

Кто-нибудь понимает эту чертовщину?








 ,