Описание тега pyparsing

Модуль pyparsing - это альтернативный подход к созданию и выполнению простых грамматик по сравнению с традиционным подходом lex/yacc или использованием регулярных выражений. Модуль pyparsing предоставляет библиотеку классов, которые клиентский код использует для построения грамматики непосредственно в коде Python.
2 ответа

Группировать несколько разделов (совпадений) с помощью Pyparsing

Я не могу понять, как сгруппировать ноль или более повторяющихся разделов в тексте с помощью разбора. Другими словами, я хочу объединить несколько совпадений в один именованный набор результатов. Обратите внимание, я хочу использовать pyparsing, так…
17 авг '17 в 15:27
1 ответ

Pyparsing: попытка быть не жадным вызывает бесконечный цикл

Я пытаюсь создать синтаксический анализатор для формата файла RCS, однако, он пытается бесконечный цикл при попытке проанализировать RCSid в контексте RCSadmin. Удаление оскорбительной строки Group(ZeroOrMore(RCSid)).setResultsName('access') + \ выз…
29 авг '11 в 16:13
1 ответ

Pyparsing - имя не начинается с символа

Я пытаюсь использовать Pyparsing для определения ключевого слова, которое не начинается с $ Так для следующего ввода: $abc = 5 # is not a valid one abc123 = 10 # is valid one abc$ = 23 # is a valid one Я попробовал следующее var = Word(printables, e…
29 май '14 в 22:46
2 ответа

Pyparsing: различия между MatchFirst, Or и oneOf

В Pyparsing, какие различия между MatchFirst, Or и oneOf когда в строках есть общие символы, такие как слово, формулировка, слова Или (['слово', 'формулировка', 'слова']) MatchFirst (['word', 'wording', 'words']) oneOf (['слово', 'формулировка', 'сл…
23 июн '14 в 03:28
1 ответ

Pyparsing: доступ к внешним ParseResults в parseaction

from pyparsing import * class AParseActionHolder(object): def __call__(self, string, index, t): f(info_from_outer_parse_results,t[0]) expr = operatorPrecedence( Word(nums),[ (Literal('A'), 1, opAssoc.RIGHT,AParseActionHolder()), (Literal('B'), 2, op…
16 май '18 в 16:33
3 ответа

Разделить строку на запятые, кроме случаев, когда они заключены в скобки

Я хотел бы разбить многострочную строку Python по ее запятым, за исключением случаев, когда запятые находятся внутри выражения в скобках. Например, строка {J. Doe, R. Starr}, {Lorem {i}psum dolor }, Dol. sit., am. et. Должен быть разделен на ['{J. D…
07 ноя '14 в 19:44
1 ответ

Как использовать литерал для разделения одного или нескольких слов?

Мне нужно составить правило для оценки следующих выражений. Sao Paulo to Rio de Janeiro >> ["Sao Paulo", "Rio de Janeiro"] Rio de Janeiro to Brasilia >> ["Rio de Janeiro", "Brasilia"] Brasilia to Sao Jose dos Pinhais >> ["Brasilia"…
01 дек '13 в 15:18
0 ответов

pyparsing: использование '\n' в качестве разделителя в delimitedList()

x1 - это строка из файла, которая содержит буквы, за которыми следует новая строка: бсdе newl=Word(alphas) newl1 = delimitedList(newl,White('\n')) newl1.parseString(x1) Я ожидаю, что это вернется: ['a','b','c',...]что он на самом деле возвращает: ['…
10 июл '14 в 23:04
2 ответа

Ошибка атрибута pyparsing setResultsName: "нет такого атрибута"

У меня возникают проблемы с тем, чтобы setResultsName работало для меня в этом сценарии, даже при попытке эмулировать приведенные примеры. Я просмотрел документацию, ознакомился с книгой автора и просмотрел примеры на форуме. Я пробовал несколько ва…
27 апр '12 в 21:38
1 ответ

Рефакторинг рекурсивного калькулятора в итерационный

У меня есть приложение Django, это калькулятор. Пользователи настраивают произвольно глубокие вычисления (например, формулу Excel) на одном экране, а затем вводят (ячейки) данные на другом экране. После привязки полей к их значениям я получаю формул…
24 мар '15 в 22:07
1 ответ

Как использовать pyparsing для сопоставления нескольких строк при использовании итератора для чтения файла

В определении моей грамматики Pyparsing есть некоторые грамматики, которые будут соответствовать строкам, которые занимают несколько строк. Если я использую API, как: PyGrammar.parseString(open('file_name').read()) Если будете вести себя правильно. …
01 окт '12 в 05:34
1 ответ

Как использовать QuotedString PyParsing?

Я пытаюсь разобрать строку, которая содержит несколько значений в кавычках. Вот что у меня так далеко: from pyparsing import Word, Literal, printables package_line = "package: name='com.sec.android.app.camera.shootingmode.dual' versionCode='6' versi…
24 май '17 в 11:29
0 ответов

Я использую pyparsing получить ошибку Spider не найден

Я пробую этот код сценария отсюда: Как я могу перевести это выражение XPath в BeautifulSoup? но я получаю ошибку. кто-то может мне помочь, почему я получаю ошибку: spider = self.crawler.spiders.create(spname, **opts.spargs) File "C:\Python27\lib\sit…
31 июл '13 в 14:13
1 ответ

Странное предупреждение, объявляющее простую рекурсивную грамматику PyParsing в Python

Я пытаюсь разобрать CLIPS-подобную грамматику в Python, используя PyParsing. Часть кода, с которой у меня проблема: import pyparsing as pp ...some pyparsing tokens definitions... INTEGER_EXPRESSION = EXPRESSION RULE_NAME = SYMBOL RULE_PROPERTY = OB …
22 май '13 в 14:21
1 ответ

Pretty-Printing PyParsing Деревья

Кто-нибудь реализовал красивую печать (желательно с помощью встроенного Python pprint модуль) деревьев разбора, выводимых из PyParsing, предпочтительно с отступом и выравниванием?
1 ответ

pyparsing: извлечение строк, содержащих определенный текст

Я пытаюсь научиться pyparsing. Звучит многообещающе и что-то, что было бы интересно использовать для обработки текста. Во всяком случае, вот мой вопрос: У меня есть список названий курсов. Например, courselist = ["Project Based CALC", "CALCULUS I", …
25 фев '11 в 02:08
1 ответ

Разбор настроек конфига в python

Я пытаюсь проанализировать файл настроек конфигурации, который я получаю из stdout, с помощью скрипта ssh. Мне нужно получить их в пары ключ / значение. Настройки конфига выглядят примерно так: НАСТРОЙКИ ВЫХОДА show all <==== TRYING TO KEEP THIS …
08 янв '14 в 20:45
1 ответ

Определение слова как смежного блока символов

Я пытаюсь извлечь идентификатор и данные из следующей строки образца. Я определил идентификатор как что-то, что будет иметь алфавиты и несколько других символов, кроме запятой. Я ожидал, что pyparsing не получит цифру 1 данных как часть идентификато…
01 фев '16 в 23:08
3 ответа

Что ближе всего к pyparsing, который существует для.NET?

Что меня особенно интересует, так это возможность определять грамматику в коде как обычный код без лишних усилий. Я знаю, что мог бы использовать IronPython. Я не хочу ОБНОВИТЬ: Для дальнейшего объяснения того, что я ищу, я включил пример кода для р…
21 сен '09 в 19:36
1 ответ

Определите переменную грамматику C# с помощью pyparsing

Как найти все переменные в исходном коде C#?Вот моя нерабочая грамматика, которая не работает, потому что ZeroOrMore (VarDef4) Protected = Literal("protected") Private = Literal("private") Public = Literal("public") Modification = Public^Private^Pro…
14 ноя '16 в 13:57