Порядок приоритета для сопоставления токенов во Flex

Приношу свои извинения, если название этой цепочки немного сбивает с толку. Я спрашиваю, как Flex (лексический анализатор) решает проблемы приоритета?

Например, предположим, у меня есть два токена с похожими регулярными выражениями, записанными в следующем порядке:

"//"[!\/]{1}    return FIRST;
"//"[!\/]{1}\<  return SECOND;

Будет ли возвращено ПЕРВОЕ или ВТОРОЕ при вводе «//! <»? Или оба?

ПЕРВАЯ строка будет достигнута раньше ВТОРОЙ, но кажется, что возврат ВТОРОЙ будет правильным поведением.

6
задан Brian Tompsett - 汤莱恩 22 June 2016 в 18:12
поделиться