如何使用pyparsing来解析和哈希由特殊字符包围的字符串?

发布于 2024-08-16 03:00:43 字数 384 浏览 9 评论 0原文

我见过的大多数 pyparsing 示例都处理线性表达式。

a = 1 + 2

我想解析 mediawiki 标题,并将它们散列到它们的部分。

例如,

Introduction goes here
==Hello==
foo
foo
===World===
bar
bar

Dict 看起来像:

{'Introduction':'Whoot introduction goes here', 'Hello':"foo\nfoo", 'World':"bar\nbar"}

如果我只能看到这种“封闭”(==标题==)解析的一个示例,我就可以继续处理链接/图像/文件等。

The majority of pyparsing examples that I have seen have dealt with linear expressions.

a = 1 + 2

I'd like to parse mediawiki headlines, and hash them to their sections.

e.g.

Introduction goes here
==Hello==
foo
foo
===World===
bar
bar

Dict would look like:

{'Introduction':'Whoot introduction goes here', 'Hello':"foo\nfoo", 'World':"bar\nbar"}

If I could just see one example of this "enclosed" (==HEADLINE==) parsing, I'd be able to move on to links/images/files etc.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

岁月苍老的讽刺 2024-08-23 03:00:43

您是否错过了 pyParsing 网站示例中的这个类似 wiki 的语言解析器

h2 = QuotedString("==")

Did you miss this wiki-like language parser in the pyParsing web site examples?

h2 = QuotedString("==")
我不吻晚风 2024-08-23 03:00:43

此外,这种格式与 .INI 文件没有什么不同:

[section1]
a = 1
b = 3
[section2]
blah=a

可以使用 此示例代码

Also, this format is not unlike a .INI file:

[section1]
a = 1
b = 3
[section2]
blah=a

Which can be parsed into a nested dictionary using this example code.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文