Синтаксис регулярного выражения Awk с числом повторений – различная обработка между gawk 3 и gawk 4

У меня возникли проблемы с пониманием или объяснением, почему следующее выражение терпит неудачу в gawk 3.1.x и все же работает в gawk 4.1.x :

(Минимальный рабочий пример)

echo ";#ADCDE#" | awk '/#.{5}#$/' echo ";#ADCDE#" | awk '/#.{5}#$/' -> создает совпадение в gawk 4.1.x , не дает соответствия в gawk 3.1.x

echo ";#ADCDE#" | awk '/#.*#$/' echo ";#ADCDE#" | awk '/#.*#$/' -> создает совпадение в обоих

Что-то изменилось между gawk 3 и 4 в том, как обрабатываются регулярные выражения? Я не думал, что конструкция повторения {n} была новой для регулярных выражений. Такое же поведение происходит, если я изменяю точку (.) С классом символов или [AZ]

  • Как добавить строку к предыдущей строке?
  • Извлечь начальное и конечное положение общего идентификатора
  • И операция по 2 столбцам (даты доступа и mofidy) в файле в linux
  • Как найти и фильтровать определенный столбец в CSV-файле?
  • Объединение столбцов в файл с помощью Awk
  • Как напечатать число, которое делится на 4, работает вверх (while loop) или awk
  • Разделить на несколько файлов на основе первого столбца при согласовании числовых диапазонов в другом столбце с awk
  • Как конвертировать из одного формата даты в другой формат?
  • One Solution collect form web for “Синтаксис регулярного выражения Awk с числом повторений – различная обработка между gawk 3 и gawk 4”

    Добавление --posix работает в 3.1

     echo ";#ADCDE#" | gawk --posix '/#.{5}#$/' 

    у меня есть

     awk --version GNU Awk 3.1.6 ... 

    С моей страницы man awk

      r{n} r{n,} r{n,m} One or two numbers inside braces denote an interval expres‐ sion. If there is one number in the braces, the preceding regular expression r is repeated n times. If there are two numbers separated by a comma, r is repeated n to m times. If there is one number followed by a comma, then r is repeated at least n times. Interval expressions are only available if either --posix or --re-interval is specified on the command line. 
    Linux и Unix - лучшая ОС в мире.