问题标签 [parsing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
12059 浏览

python - ConfigParser 使用的配置文件中 DEFAULT 部分的预期用途是什么?

我已经使用 ConfigParser 很长一段时间来进行简单的配置。困扰我很久的一件事是 DEFAULT 部分。我不确定什么是合适的用途。我已经阅读了文档,但我真的很想看到一些关于它使用的巧妙示例以及它如何影响文件中的其他部分(真正说明了可能发生的事情的类型)。

0 投票
4 回答
3728 浏览

parsing - 递归下降解析 - 从 LL(1) 向上

以下简单的“计算器表达式”文法(BNF)可以很容易地用一个简单的递归下降解析器来解析,它是预测性的 LL(1):

因为看到下一个标记总是足以知道要选择的规则。但是,假设我添加了以下规则:

为了在命令行上与计算器进行交互,使用变量,如下所示:

我不能使用简单的 LL(1) 预测解析器来解析<command>规则,这是真的吗?我试图为它编写解析器,但似乎我需要知道更多的令牌。是使用回溯的解决方案,还是我可以只实现 LL(2) 并始终向前看两个令牌?

RD 解析器生成器如何处理这个问题(例如,ANTLR)?

0 投票
5 回答
397 浏览

java - 如何使用 Perl 识别对 Java 类的引用?

我正在编写一个 Perl 脚本,并且已经到了需要逐行解析 Java 源文件以检查对完全限定 Java 类名的引用的地步。我预先知道我正在寻找的课程;也是正在搜索的源文件的完全限定名称(基于其路径)。

例如,在 com/bob/is/YourUncle.java 文件中查找对 foo.bar.Baz 的所有有效引用。

目前我能想到的需要考虑的情况是:

  1. 被解析的文件与搜索类在同一个包中。

    在 foo/bar/Boing.java 中找到 foo.bar.Baz 引用

  2. 它应该忽略评论。

    /li>
  3. 内联完全限定参考。

    /li>
  4. 基于导入语句的引用。

    /li>

在 Perl 5.8 中最有效的方法是什么?也许是一些花哨的正则表达式?

0 投票
8 回答
1831 浏览

language-agnostic - 一个 StringToken 解析器,它提供谷歌搜索风格“你的意思是:”

寻求一种方法:

在字符串中使用空格分隔的标记;返回一个建议的词


即:
谷歌搜索可以采用“fonetic wrd nterpreterr”
并在结果页面顶部显示“您的意思是:语音单词解释器”

任何 C* 语言或 Java 的解决方案都是首选。


是否有任何执行此类功能的现有开放库?

或者有没有办法利用 Google API 来请求建议的单词?

0 投票
5 回答
2666 浏览

regex - 正则表达式,用于测试字符串是否包含以 10 为底的有效实数

例子:

0 投票
4 回答
2136 浏览

email - 解析可能是 html 或各种奇怪编码的原始电子邮件并将其转换为纯文本,例如 pine 可能会显示它的方式

我想这样做的原因是为了便于解析通过电子邮件发送给机器人的指令,majordomo 可能会解析订阅和取消订阅等命令。事实证明,有很多疯狂的格式和事情需要处理,比如引用文本、区分标题和正文等。

执行此操作的 perl 模块将是理想的,但欢迎使用任何语言的解决方案。

0 投票
9 回答
6407 浏览

c# - 通过网络读取和解析大型文本文件的最佳方式是什么?

我有一个问题,需要我从远程机器上解析几个日志文件。有一些复杂性:1)文件可能正在使用 2)文件可能非常大(100mb+) 3)每个条目可能是多行的

要解决使用中的问题,我需要先复制它。我目前正在将它直接从远程机器复制到本地机器,并在那里解析它。这导致了问题 2。由于文件很大,因此在本地复制它可能需要很长时间。

为了增加解析时间,我想让解析器多线程,但这使得处理多行条目有点棘手。

两个主要问题是:1)我如何加快文件传输(压缩?,是否需要在本地传输?,我可以通过其他方式读取正在使用的文件吗?) 2)我如何处理多行条目在线程之间拆分行时?

更新:我没有对服务器进行明显解析的原因是我希望对 CPU 的影响尽可能小。我不想影响系统即时测试的性能。

0 投票
3 回答
3508 浏览

php - PHP parse_ini_file() - 它在哪里看?

如果我调用 php parse_ini_file("foo.ini"),它会在哪些路径中查找 foo.ini ?包含路径?该函数的文档没有提到它。

0 投票
22 回答
71665 浏览

javascript - 如何从 JavaScript 中的用户输入将时间解析为 Date 对象?

我正在开发一个表单小部件,供用户在文本输入中输入一天中的时间(用于日历应用程序)。使用 JavaScript(我们使用 jQuery FWIW),我想找到解析用户输入到 JavaScriptDate()对象中的文本的最佳方法,以便我可以轻松地对其进行比较和其他操作。

我尝试了这种parse()方法,但它对我的需求来说有点太挑剔了。我希望它能够成功地将以下示例输入时间(除了其他逻辑上相似的时间格式)解析为同一个Date()对象:

  • 1:00 PM
  • 1:00 PM
  • 下午 1:00
  • 1:00 PM
  • 1:00 PM。
  • 下午 1:00
  • 下午 1 点
  • 下午 1 点
  • 1个
  • 下午 1 点
  • 下午 1 点
  • 1便士
  • 13:00
  • 13

我在想我可能会使用正则表达式来拆分输入并提取我想用来创建Date()对象的信息。做这个的最好方式是什么?

0 投票
15 回答
215237 浏览

java - 在 Java 中比较 2 个 XML 文档的最佳方法

我正在尝试编写一个应用程序的自动化测试,该应用程序基本上将自定义消息格式转换为 XML 消息并将其发送到另一端。我有一组很好的输入/输出消息对,所以我需要做的就是发送输入消息并监听从另一端出来的 XML 消息。

当需要将实际输出与预期输出进行比较时,我遇到了一些问题。我的第一个想法就是对预期和实际消息进行字符串比较。这并不能很好地工作,因为我们所拥有的示例数据的格式并不总是一致,并且经常有不同的别名用于 XML 命名空间(有时根本不使用命名空间。)

我知道我可以解析两个字符串,然后遍历每个元素并自己比较它们,这不会太难做到,但我觉得有更好的方法或我可以利用的库。

所以,归根结底,问题是:

给定两个都包含有效 XML 的 Java 字符串,您将如何确定它们在语义上是否等效?如果您有办法确定差异是什么,则可以加分。