J'essaye d'analyser un fichier diff unifié en utilisant le pyparage comme un exercice et je ne peux pas obtenir quelque chose de bien. Voici la partie de mon fichier diff qui me provoque trouble:Correspondance d'un espace au début d'une ligne à l'aide de pyparsing
(... some stuff over...)
banana
+apple
orange
La première ligne commence par « » puis « banane ». Je l'expression suivante pour l'analyse d'une ligne:
linestart = Literal(" ") | Literal("+") | Literal("-")
line = linestart.leaveWhitespace() + restOfLine
Cela fonctionne lors de l'analyse d'une seule ligne, mais lorsque je tente d'analyser le fichier entier, l'instruction « leaveWhitespace » faire le début de l'analyseur à la fin de la dernière ligne. Dans mon exemple, après l'analyse de "banana", le prochain caractère est "\ n" (à cause de leaveWhitespace) et l'analyseur essaye de faire correspondre "" ou "+" ou "-" et lance ainsi une erreur.
Comment puis-je gérer cela correctement?
Qui donne des devoirs sur pyparsing ?! – PaulMcG
Moi, ce n'est pas des devoirs, je veux juste apprendre à pyper. – subb
Veuillez visiter le wiki à http://pyparsing.wikispaces.com. Il existe des liens vers des documents et des articles en ligne. Et n'hésitez pas à poster des questions sur l'onglet Discussion de la page d'accueil du wiki. Bienvenue à pyparsing! – PaulMcG