J'ai quelques données qui peuvent être analysées en utilisant la fonction OneorMore
de pyparsing. Quelque chose comme,acccumulate using pyparsing
fun = OneorMore(foo.setResultsName("foo") + bar.setResultsname("bar"))
où bar
et foo
sont 2 parseurs.
Le problème avec cette fonction est que chaque fois que OneorMore
jeu parseurs foo et bar dans le flux de données, les valeurs correspondantes associées aux touches "foo"
et "bar"
sont updated.But, comment puis-je accumuler toutes les valeurs appariées de foo
et bar
?
Je suis en train de mettre en œuvre quelque chose comme le many1 analyseur monadique dans Haskell, sauvegarder le résultat de l'analyse syntaxique foo
et bar
dans un type de données Algébrique, comme
data FooBar a = FooBar a a
many1 :: ParsecT s u m a -> ParsecT s u m [a]
many1 parserFooBar :: ParsecT s u m [FooBar a]
Comment puis-je faire cela en python?
Serait-il possible d'afficher "résultat réel Python" vs "résultat Python désiré" pour ceux qui ne sont pas familiers avec Haskell? – CoupleWavyLines