问题标签 [parslet]
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.
ruby - Parslet:如何缓冲/解析增量数据
我正在用 parslet 编写一个 HTTP/1 响应解析器。它有效,但只有当我发送完整的有效载荷时。
我有这样的东西:
但是如果我传递一个不完整的有效载荷,我会得到:
我希望能够在不失败的情况下向解析器提供字节,至少如果它们不违反预期的话。有没有办法以某种方式“缓冲”直到违反某些规则或满足所有期望?
ruby - SystemStackError:使用 Parslet 解析 SCIM 2.0 过滤器查询时
我正在使用 Parslet 编写一个 SCIM 2.0 过滤器解析器。当我尝试解析以下查询时,我得到了 SystemStackError。
'title pr or userType eq "Intern"'
我已将 ABNF 表示法从https://www.rfc-editor.org/rfc/rfc7644#page-21转换为示例代码中显示的 Parslet 解析器。
我期望 Parslet 应该能够安全地处理递归,而不是引发 SystemStackError。默认情况下,基本原子将 设置def cached?
为返回 true。如果我修补 Atom 基类以从该cached?
方法返回 false,那么我就能够解析这个查询。我不确定我做错了什么。
ruby - 如何使用 parslet 将 json 中的嵌套数组字符串(如字符串)转换为结构化对象
我在将包含嵌套数组的已解析的类似 JSON 的字符串转换为结构化对象时遇到问题。我正在使用 parslet 来做到这一点。
我创建了解析器和转换器,如下所示。但我无法处理嵌套数组的情况。
有问题的字符串是"[[[1],[2,3]]]"
. 我希望收到正确的嵌套结构。但我得到的是"[[[[1],[2,3]]]]"
一个支架太多了。
ruby - 如何在 irb 中测试 parslet atom
我在 parslet gem 介绍中发现了这样的内容:
来源:香芹宝石
我确实在 irb 上尝试过这个(在 require 'parslet' 之后),但它不起作用。当然,如果我把它作为一个规则放在 Parslet::Parser 类中它会起作用。我的问题是我们可以在 irb 中尝试像上面那样的 parslet atom 吗?有什么办法可以试试吗?
像这样:
regex - 尝试按 OR 运算符对术语进行分组
我正在尝试解析一个字符串,以便我可以轻松识别由“OR”分隔的术语。
我目前有以下规则和解析器类设置:
这目前允许我这样做:
哪个工作正常,但理想情况下,我想要一些可以单独给我这些术语但带有 or 标志的东西:{:query=>[{:clause=>{:term=>"wow",:or=>true}},{:clause=>{:term=>"lol",:or=>true},{:clause=>{:term=>"omg",:or=>true}}]}
这是应该用变压器做的事情吗?就像,只是在变压器中设置一个规则来做split(' OR ')
还是有更好的方法来设置我的规则?