Articles of pyparsing

¿Dificultad de este trabajo en particular usando pyparsing? (principiante)

Tengo la tarea de hacer eso. Estoy seguro de que Python y pyparsing realmente podrían ayudar, pero todavía soy demasiado novato con la progtwigción para tomar una decisión inteligente sobre qué tan difícil será la implementación completa y si vale la pena intentarlo. Es cierto que será un infructuoso fregadero del tiempo. La tarea es […]

Agregando información externa a ParseResults antes de regresar

Quiero agregar información externa a ParseResults antes de volver. Devuelvo los resultados del análisis como asXML (). Los datos externos se representan como diccionario para analizarlos como XML en el análisis final. Este es el código antes de agregar datos externos desde la importación de contenido * # a hypothetical outer parser, with an unparsed […]

pyparsing, cada uno, nombre de resultados

Estoy tratando de usar pyparsing para crear un pequeño analizador que no sea bastante simple (no tengo cláusulas, no tengo ninguna combinación, etc.). Hoy he basado mi trabajo en el script de ejemplo simpleSQL.py incluido con pyparsing. Estoy tratando de agregar las cláusulas “GRUPO POR” y “ORDENAR POR” en el analizador, pero trato de hacerlas […]

Emparejando líneas no vacías con pyparsing

Estoy tratando de hacer una pequeña aplicación que utiliza el uso de pyparsing para extraer datos de archivos producidos por otro progtwig. Estos archivos tienen el siguiente formato. SOME_KEYWORD: line 1 line 2 line 3 line 4 ANOTHER_KEYWORD: line a line b line c ¿Cómo puedo construir una gramática que ayude a extraer la line […]

Cómo hacer coincidir paréntesis / paréntesis en pyparsing

Tengo un token de gramática especificado como: list_value = Suppress(oneOf(“[ (“)) + Group( delimitedList(string_value | int_value))(“list”) + Suppress(oneOf(“] )”)) Sin embargo, esto obviamente permite (foo, bar] ¿Cómo hago cumplir que las listas de apertura y cierre de caracteres deben coincidir?

Pyparsing – donde el orden de los tokens es impredecible

Quiero poder extraer el tipo y el recuento de letras de un texto donde las letras pueden estar en cualquier orden. Hay algunos otros análisis en los que estoy trabajando, ¡pero este bit me ha dejado perplejo! input -> result “abc” -> [[‘a’,1], [‘b’,1],[‘c’,1]] “bbbc” -> [[‘b’,3],[‘c’,1]] “cccaa” -> [[‘a’,2],[‘c’,3]] Podría usar la búsqueda o […]

No se puede pyparsing Dict () para devolver el diccionario nested

Estoy tratando de analizar cadenas de la forma: ‘foo(bar:baz;x:y)’ Me gustaría que los resultados se devuelvan en forma de un diccionario nested, es decir, para la cadena anterior, los resultados deberían tener este aspecto: { ‘foo’ : { ‘bar’ : ‘baz’, ‘x’ : ‘y’ } } A pesar de las numerosas combinaciones de Dict () […]

Análisis de llamadas de funciones anidadas mediante pyparsing

Estoy tratando de usar pyparsing para analizar las llamadas de función en la forma: f(x, y) Eso es fácil. Pero como se trata de un analizador de descendencia recursiva, también debería ser fácil de analizar: f(g(x), y) Eso es lo que no puedo conseguir. Aquí hay un ejemplo resumido: from pyparsing import Forward, Word, alphas, […]

¿Cómo puedo configurar PyParsing en Google App Engine?

Vi en la documentación de Google App Engine que http://www.antlr.org/ Antlr3 se utiliza como la biblioteca de terceros de análisis. Pero por lo que sé, Pyparsing parece ser más fácil de usar y solo apunto a analizar una syntax simple. ¿Hay alguna alternativa? ¿Puedo obtener pyparsing trabajando en App Engine?

Pyparsing: ¿Cómo obtener la ubicación del token?

Tengo una gramática simple de pyparsing que coincide con números separados por espacios: from pyparsing import * NUMBER = Word( nums ) STATEMENT = ZeroOrMore( NUMBER ) print( STATEMENT.parseString( “1 2 34” ) ) Dado 1 2 34 cadena de prueba, devuelve 3 cadenas que son símbolos analizados. Pero, ¿cómo encuentro la ubicación de cada […]