В настоящее время я создаю лексер и хочу сопоставить строки, которые действительны в начале регулярного выражения.
(Я не очень хорош в английском, я покажу вам, что это на самом деле означает)
Лексер потребляет один символ каждый раз линейно.
Например, у меня есть строка abca.sd
и регулярное выражение [a-zA-Z]+\.[a-zA-Z]+
.
В начале лексер потребляет a
, но не соответствует регулярному выражению с использованием std::regex_match
, что делает его недоступным и недействительным.
Что я действительно хочу, так это с потреблением a
, abca.
, abca.sd
, лексер решит, что все это действительно.