В BASIC заявлении печати может выглядеть следующим образом:Регулярного выражения, чтобы соответствовать запятой не внутри строкового литерала
100 PRINT "Copyright, Adrian McMenamin","maybe"
Который должен поставить закладку пространства между первым оператором и вторым.
Я работаю на DSL/переводчика для BASIC в Groovy/Java, который нужно разобрать эту строку и производить что-то вроде:
print "Copyright, Adrian McMenamin", " ","maybe"
(Как Groovy интерпретирует запятую как только отделяющую параметры печати function.)
Итак, какое регулярное выражение будет различать запятые не внутри цитаты, а те, которые есть (не беспокойтесь о PRINT или номере линии и т. д.)?
Что такое грамматика для строк на языке BASIC? Возможно ли избежать кавычек внутри строки? –
Почему вы не марксируете запятые, а затем присоединяетесь к полученной коллекции с вкладками вместо того, чтобы пытаться анализировать регулярные выражения? –
Да, запятые могут появляться внутри строковых литералов в BASIC. Точка токенинга хорошая. – adrianmcmenamin