Quantcast
Channel: Ru.Board
Viewing all articles
Browse latest Browse all 1286465

Сценарии для Windows (2737) / Стороннее ПО использовать только в виде готового решения

$
0
0
LevT:
Нужна помощь умельцев,
то ли по регуляркам, то ли по виндовым кодировкам

Тестирую грамматику, [more=такую]
/**
* S-expression parser.
*
* Atom: 42, foo, bar, "Hello world"
*
* List: (), (+ 5 x), (print "hello")
*/

// ---------------------------------------------
// Lexical grammar (tokens):

%lex

%%

\s+ /* skip whitespace */

\"[^\"]*\" return 'STRING'

\d+ return 'NUMBER'

[\W\-+*=<>/]+ return 'SYMBOL'

/lex

// ---------------------------------------------
// Syntactic grammar (BNF):

%%

Exp
: Atom
| List
;

Atom
: NUMBER
| STRING
| SYMBOL
;
[/more]

Использую некий JS инструмент, который берёт такой исходник, разбирает и тестирует на соотвествие BNF грамматике, может и выдать код парсера на целевом языке программирования.
Под линуксом инструмент этот точно рабочий, автор инструмента демонстрирует работу на экране.

В винде из токенайзера под [?] работает всё,
кроме ловли STRING по регулярке "строка это нечто в двойных кавычках"

Ошибка выглядит так

Цитата:

SyntaxError:

hello
^
Unexpected token: "h" at 1:0.


Viewing all articles
Browse latest Browse all 1286465

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>