Я определил следующую грамматику, используя Parse :: RecDescent
my $grammar = q{
top : operand equal value { print $item{value} }
operand: /\w+/
equal : /\=/
value : { my $value = extract_quotelike($text) ;$return =$value;}
};
, которую я хочу обработать в следующих случаях:
X = 2 -> должен вывести 2
X = "2" -> должен вывести 2
x = '2' -> должен вывести 2
, но приведенная выше грамматика дает разные результаты:
для x= 2 не удалось разобрать его
для x = "2" -> вывести "2"
для x = '2' -> вывести '2'
Любая идея изменить вышеуказанную грамматику, чтобы напечатать 2 во всех 3 вышеупомянутых случаях, т.е. удалить кавычки