pyparsing相关内容

pyparsing 一种查询格式到另一种

我很茫然.我一直试图让这个工作好几天了.但是我对此无能为力,所以我想我会在这里咨询你们,看看是否有人能够帮助我! 我正在使用 pyparsing 尝试将一种查询格式解析为另一种格式.这不是一个简单的转变,但实际上需要一些脑筋:) 当前查询如下: ("breast neoplasms"[MeSH 术语] OR 乳腺癌[致谢]OR 乳腺癌[图/表格说明] OR 乳腺癌[章节标题]OR 乳 ..
发布时间:2022-01-15 13:25:25 Python

无法让 pyparsing Dict() 返回嵌套字典

我正在尝试解析以下形式的字符串: 'foo(bar:baz;x:y)' 我希望以嵌套字典的形式返回结果,即对于上述字符串,结果应如下所示: { 'foo' : { 'bar' : 'baz', 'x' : 'y' } } 尽管有多种 Dict() 和 Group() 组合,但我无法让它工作.我的(版本之一)语法如下所示: 导入pyparsing为ppfield_name = pp.Wor ..
发布时间:2022-01-07 13:42:01 Python

pyparsing nestedExpr 和嵌套括号

我正在研究一种非常简单的“查询语法",可供具有合理技术技能的人使用(即,本身不是编码人员,但能够触及主题) 他们在表单上输入的典型示例是: 地址如街道和投票 = 真和((年龄>=25和性别 = 男)或者(年龄介于 [20,30]和性别 = F)或者(年龄 >= 70和眼睛!=蓝色)) 与 无需报价 括号的潜在无限嵌套 简单的 AND|OR 链接 我正在使用 pyparsi ..
发布时间:2022-01-07 13:36:14 Python

Pyparsing:将半 JSON 嵌套的纯文本数据解析为列表

我有一堆嵌套数据,其格式与 JSON 大致相似: company=“我的公司"电话=“555-5555"人={人={名称=“鲍勃"位置=“西雅图"设置={大小=1颜色=“红色"}}人={姓名=“乔"位置=“西雅图"设置={大小=2颜色=“蓝色"}}}地方={...} 有许多具有不同深度级别的不同参数——这只是一个很小的子集. 同样值得注意的是,当创建一个新的子数组时,总是有一个等号后跟一 ..
发布时间:2021-12-22 20:10:16 Python

用 Python 解析 SQL

我想在非关系数据存储之上创建一个 SQL 接口.非关系数据存储,但以关系方式访问数据是有意义的. 我正在研究使用 ANTLR 来生成将 SQL 表示为关系代数表达式的 AST.然后通过评估/遍历树返回数据. 我以前从未实现过解析器,因此我想就如何最好地实现 SQL 解析器和求值器提供一些建议. 上述方法听起来是否正确? 我还应该研究其他工具/库吗?像 PLY 或 Pyparsi ..
发布时间:2021-12-12 23:53:21 Python

xml DTD 文件的解析器

我在实现解析器方面很新,我正在尝试解析 xml DTD 文件以为其生成上下文无关语法.我尝试了 pyparsing 和 yacc,但仍然可以得到任何结果.因此,如果有人可以为我提供一些技巧或示例代码来编写这样的解析器,我将不胜感激.下面是一个示例 DTD 文件: 提前致谢. 解决方案 这是一个开始,它会将数据解析为 ParseResults 数据结构,然后您可以遍历并为定义的 doc ..
发布时间:2021-10-02 18:42:55 Python

使用 Python 编辑 RTF 文件

也许这是一个愚蠢的问题,但我不明白这一点 :) 我有一个 RTF 文档,我想更改它.例如.有一个表格,我想复制一行并以面向对象的方式更改代码中第二行中的文本. 我认为 pyparsing 应该是要走的路,但我摆弄了几个小时却没有明白.我没有提供示例代码,因为我认为这都是无稽之谈:/ 我是在正确的道路上还是有更好的方法? 以前有人做过类似的事情吗? 解决方案 RTF ..
发布时间:2021-07-11 18:31:18 Python

在pyparsing期间更改字符串

在我的 pyparsing 代码中,我有以下表达式: exp1 = Literal("foo") + Suppress(Literal("=")) + Word(alphanums+'_-')exp2 = Literal("foo") + Suppress(Literal("!=")) + Word(alphanums+'_-')exp = Optional(exp1) &可选(exp2) 我 ..
发布时间:2021-06-26 19:31:03 Python

PYTHON 的 Tcl 文件解析器

我有一个 .tcl 文件. 是否有任何可以直接从 .tcl 文件中提取数据的解析器?我不想将 REGEX 用于此任务.pyparsing 可以解决这个问题吗? 我使用的是 Python 2.7 解决方案 .tcl 文件不是数据文件,它们是用 Tcl 编程语言编写的编程脚本. Tcl 语言在形式和风格上极其灵活,这使得编写通用解析器成为一项重大项目,无论是在 pyparsi ..
发布时间:2021-06-14 19:39:24 其他开发

使用pyparsing将文本拆分成行

我正在编写我的第一个使用 pyparsing 的程序. 我想解析一个文件,其中以“\n"结尾的每一行都是一个标记. 请解释如何操作. 实际上,我需要解析 .lyx 文件..lyx 文件的一个示例:https://github.com/nicowilliams/lyx/blob/master/lib/examples/Braille.lyx 解决方案 看来以下解决了任务: ..
发布时间:2021-06-14 19:37:13 Python

使用 PyParsing 解析带有重要换行符的语言(如 Python)

我正在实现一种换行符很重要的语言,有时就像在 Python 中一样,具有完全相同的规则. 就我的问题而言,我们可以采用与赋值、括号以及换行符和分号处理有关的 Python 片段. 例如,可以这样写: a = 1 + 2 + 3 # okb = c 但不是 a = 1 + 2 + 3 b = c # 不正确 因为需要一个换行符来分隔两个语句. 但是我们可以有 a = 1 ..
发布时间:2021-06-14 19:35:36 Python

编辑pyparsing解析结果

这类似于我之前问过的问题. 我为包含多个日志的文本文件编写了 pyparsing 语法 logparser.日志记录每个函数调用和每个函数完成.底层进程是多线程的,所以有可能调用慢函数A,然后调用快速函数B并几乎立即完成,然后在该函数>A 完成并给我们它的返回值.因此,日志文件很难手动读取,因为一个函数的调用信息和返回值信息可能相隔数千行. 我的解析器能够解析函数调用(从现在开始称为 ..
发布时间:2021-06-14 19:35:08 Python

使用二元和一元运算符、保留字且不带括号解析表达式

我正在尝试解析由二元运算符 +、一元运算符 not 和可以是不是 的任何字母字符串的标识符组成的表达式不是 from pyparsing import (无壳关键字,结合,单词,阿尔法,操作助理,中缀符号,)identifier = Combine(~CaselessKeyword('not') + Word(alphas))表达式 = infixNotation(标识符, [('+', 2, ..
发布时间:2021-06-14 19:33:49 Python

pyParsing 评估表达式

在浏览了本网站上的几个 pyparsing 和帖子示例后,我设法编写了可以完全按照我想要的方式解析表达式的代码.但现在我被困在如何评估它,因此在这里寻求您的帮助. 所以当我给出这个字符串时:“(Number(3) > Number(5)) AND (Time(IST) [[[['Number', [3]], '>', ['Number', [5]]], 'AND', [['Time', [' ..
发布时间:2021-06-14 19:31:25 Python

PyParsing Parse 嵌套循环,带大括号和特定标头

我发现了几个关于 pyparsing 的主题.他们在解析嵌套循环时处理几乎相同的问题,但即便如此,我也找不到解决我的错误的方法. 我有以下格式: 键值;header_name "optional_metadata"{核心价值;子标题名称{核心价值;};};核心价值; 键是字母 值可以是 Int、String 类型,带字母 + "@._" 键/值可能在大括号块之后 键/值可能在文件中 ..
发布时间:2021-06-07 19:06:58 Python

Pyparsing - 匹配最外面的一组嵌套括号

我正在尝试使用 pyparsing 构建一个解析器,该解析器将匹配任意嵌套的一组括号内的所有文本.如果我们考虑这样的字符串: "[A,[B,C],[D,E,F],G] 随机中间文本 [H,I,J]" 我希望解析器以返回两个匹配项的方式进行匹配: ["[A,[B,C],[D,E,F],G]",“[H,我,J]"] 我能够使用一连串的 originalTextFor 与 NestedExp ..
发布时间:2021-06-07 19:03:25 其他开发

解析URL参数中的定界和嵌套字段名称以获得部分响应

在基于 Flask-RESTful 的API中,我想允许客户端通过?fields = ... 部分地检索JSON响应.参数.它列出了字段名称(JSON对象的键),这些字段名称将用于构造较大的原始文件的部分表示形式. 这可能是最简单的逗号分隔列表: GET/v1/foobar?fields = name,id,date 可以使用webargs的DelimitedList 架构字段很容易 ..
发布时间:2021-05-08 19:44:02 Python