Size: a a a

2020 June 22

A

Andrey in ErlangRus
кто-нибудь баловался с эрланговским лексером leex?
источник

A

Andrey in ErlangRus
пытаюсь дать ему регексп на строку "[^"\\]+(?:\\.[^"\\]*)*"
источник

ML

Maksim Lapshin in ErlangRus
Andrey
кто-нибудь баловался с эрланговским лексером leex?
ага. Переписали с неотомы на leex, чтобы она на 100-символьных срочках ядро в топ не загоняла
источник

A

Andrey in ErlangRus
а он грит
bad regexp `illegal character ?'
источник

A

Andrey in ErlangRus
ой не то
источник

A

Andrey in ErlangRus
источник

A

Andrey in ErlangRus
вот типа строка с экранированием символов
источник

A

Andrey in ErlangRus
а лексер не переваривает такое (
источник

SP

Sergey Prokhorov in ErlangRus
В leex там ограниченный синтаксис regexp поддерживается
источник

A

Andrey in ErlangRus
да, я уже понял
источник

SS

Sergii Serogin in ErlangRus
а он умеет в non capturing group?
источник

A

Andrey in ErlangRus
походу нет
источник

SS

Sergii Serogin in ErlangRus
угу
источник

A

Andrey in ErlangRus
The regular expressions allowed here is a subset of the set found in egrep and in the AWK programming language, as defined in the book, The AWK Programming Language, by A. V. Aho, B. W. Kernighan, P. J. Weinberger. They are composed of the following characters:
источник

A

Andrey in ErlangRus
тогда вопрос как заматчить строки без non capturing group ?
источник

SS

Sergii Serogin in ErlangRus
побить на группы и не аназилировать то что не нужно, наверное 🙂
источник

A

Andrey in ErlangRus
а все разобрался. Вот так норм матчим
STRING     = "[^"\\]+(\\.[^"\\]*)*"
источник

SP

Sergey Prokhorov in ErlangRus
https://github.com/klarna/erlavro/pull/90/files#diff-693e97e2ccbe5dc2b401879bfa283bb9 тут последний раз упражнялся. Вроде "[^\"]+" : {token, {string_v, TokenLine, unescape(TokenChars, $\")}}.
источник

A

Andrey in ErlangRus
это без экранирования
источник

SP

Sergey Prokhorov in ErlangRus
но у меня это любая строка в двойных кавычках
источник