Кроме явно декларированных автоматических, статических или внешних переменных системы программирования C в действиях правил допускается использовать собственные встроенные переменные генератора LEX. При этом наиболее часто используются переменные yytext и yyleng, объявление и определение которых генератор LEX автоматически включает в исходный код проектируемого лексического анализатора.
Переменная yytext имеет тип указателя на символы (char *) и используется в блоке действия правила для адресации внешнего одномерного символьного массива, составленного из символов входного потока, которые удовлетворяют регулярному выражению данного правила. Символьный массив yytext обычно применяется, когда в блоке действий необходимо преобразовать или посимвольно обработать входной текст, соответствующий регулярному выражению правила.
Например, следующие два правила специфицирует криптографическое преобразование входного текста, составленного из заглавных и строчных латинских букв в кодировке ASCII, на основе шифра Цезаря:

%%

[a-z]       {  /* Шифрование строчных латинских букв */
             putchar((yytext[0] - 'a'+ 1)%26 + 'a');
            }
[A-Z]       {  /* Шифрование заглавных латинских букв */
             putchar((yytext[0] - 'A'+ 1)%26 + 'A');
            }

Как известно, шифр Цезаря реализует наиболее популярный вариант шифра простой замены, в котором каждая буква исходного текста, кроме последней буквы по алфавиту, заменяется следующей буквой алфавита. Последняя по алфавиту буква исходного текста, заменяется первой буквой алфавита. Учитывая, что в кодировке ASCII буквы упорядочены по алфавиту, образуя два непрерывных диапазона из 26-ти строчных и 26-ти заглавных букв, соответственно, требуемое преобразование кодов букв легко реализуется в арифметике вычетов по модулю 26. В действиях каждого из приведенных правил, код текущей буквы идентифицируется значением начального элемента символьного массива yytext[0]. Для отображения результатов шифрования в выходном потоке стандартного вывода используется вызов библиотечной функции putchar системы программирования C.
В действиях более сложных правил массив yytext может содержать больше одного элемента и все его элементы, аналогично начальному элементу, доступны по своему индексу. В этих случаях часто бывает полезно знать число символов в массиве yytext, которые удовлетворяют данному правилу, то есть эффективную длину массива yytext в байтах. Эту информацию в действиях правил предоставляет значение внешней целочисленной переменной yyleng. Таким образом, считается, что все символы массива yytext, которые имеют индексы от 0 до (yyleng – 1), удовлетворяют текущему правилу. Фактически значение переменной yyleng эквивалентно результату измерения длины массива yytext с помощью библиотечной функции strlen из системы программирования C.
Практическое использование переменной yyleng совместно с переменной yytext иллюстрирует следующее правило поиска символьных палиндромов среди слов входного текста:

%%
[A-Za-z]+     {   /* Поиск символьных палиндромов */
               int i = yyleng - 1;  /* обратный счетчик символов слова */
               int j = 0;           /* прямой счетчик символов слова */
               while(j < yyleng)    /* Цикл сравнения символов слова */
                if(tolower(yytext[j++]) != tolower(yytext[i--]))
                  break;
               if( j == yyleng)      /* Оценка результата сравнения */
                puts(yytext);
              }

Как известно, символьным палиндромом является слово, которое одинаково читается слева направо и справа налево, например, rotor или radar. Регулярное выражение данного правила распознает любые слова входного текста, которые составлены из букв латинского алфавита. Проверку свойства палиндрома для полученного слова обеспечивает действие правила, где осуществляется сравнение yyleng парных букв, которые находятся на одинаковом расстоянии от противоположных концов массива yytext, содержащего все символы данного слова. Чтобы исключить различие регистра сопоставляемых символов, они приводятся к регистру строчных букв с помощью библиотечной функции tolower системы программирования C. Если все рассмотренные пары символов совпадают с точностью до регистра букв, то данное слово является палиндромом и все символы массива yytext, который содержит его, отображается через поток стандартного вывода с помощью библиотечной функции puts системы программирования C.