Questions tagged «parsing»

解析是指将工件分解为组成元素并捕获这些元素之间的关系。此标记不适用于有关自托管的Parse Platform(使用[parse-platform]标记)或解析特定编程语言中的错误(使用适当的语言标记)的问题。

28
在Bash中转置文件的有效方法
我有一个巨大的制表符分隔文件,格式如下 X column1 column2 column3 row1 0 1 2 row2 3 4 5 row3 6 7 8 row4 9 10 11 我想仅使用bash命令以一种有效的方式对其进行转置(我可以编写十行左右的Perl脚本来做到这一点,但执行起来应该比本地bash函数要慢一些)。所以输出应该看起来像 X row1 row2 row3 row4 column1 0 3 6 9 column2 1 4 7 10 column3 2 5 8 11 我想到了这样的解决方案 cols=`head -n 1 input | wc -w` …
110 bash  parsing  unix  transpose 

11
如何获取URL中最后一个斜杠之后的所有内容?
如何提取Python中URL中最后一个斜杠之后的内容?例如,这些URL应该返回以下内容: URL: http://www.test.com/TEST1 returns: TEST1 URL: http://www.test.com/page/TEST2 returns: TEST2 URL: http://www.test.com/page/page/12345 returns: 12345 我已经尝试过urlparse,但这给了我完整的路径文件名,例如page/page/12345。
110 python  parsing  url 


13
在GAE上解析完全有效的XML时,“序言中不允许内容”
在过去的48个小时里,我一直对这个绝对令人毛骨悚然的bug感到震惊,所以我想我最终会把毛巾扔掉,尝试在这里问一下,然后再将笔记本电脑扔出窗户。 我正在尝试从对AWS SimpleDB的调用中解析响应XML。响应恢复正常。例如,它可能看起来像: <?xml version="1.0" encoding="utf-8"?> <ListDomainsResponse xmlns="http://sdb.amazonaws.com/doc/2009-04-15/"> <ListDomainsResult> <DomainName>Audio</DomainName> <DomainName>Course</DomainName> <DomainName>DocumentContents</DomainName> <DomainName>LectureSet</DomainName> <DomainName>MetaData</DomainName> <DomainName>Professors</DomainName> <DomainName>Tag</DomainName> </ListDomainsResult> <ResponseMetadata> <RequestId>42330b4a-e134-6aec-e62a-5869ac2b4575</RequestId> <BoxUsage>0.0000071759</BoxUsage> </ResponseMetadata> </ListDomainsResponse> 我将此XML传递给解析器 XMLEventReader eventReader = xmlInputFactory.createXMLEventReader(response.getContent()); 并打电话eventReader.nextEvent();多次以获得我想要的数据。 这是奇怪的部分-它在本地服务器中很好用。我解析了响应,每个人都很高兴。问题是,当我将代码部署到Google App Engine时,传出请求仍然有效,并且响应XML对我来说似乎100%相同且正确,但是响应无法解析,但出现以下异常: com.amazonaws.http.HttpClient handleResponse: Unable to unmarshall response (ParseError at [row,col]:[1,1] Message: Content is not allowed in prolog.): <?xml version="1.0" encoding="utf-8"?> …

3
嵌套的JSON对象-我是否必须对所有内容使用数组?
有什么方法可以在JSON中嵌套对象,因此我不必从所有内容中制成数组?为了能够无错误地解析我的对象,我似乎需要这样的结构: {"data":[{"stuff":[ {"onetype":[ {"id":1,"name":"John Doe"}, {"id":2,"name":"Don Joeh"} ]}, {"othertype":[ {"id":2,"company":"ACME"} ]}] },{"otherstuff":[ {"thing": [[1,42],[2,2]] }] }]} 如果我将此对象提取到一个名为“结果”的变量中,则必须像这样访问嵌套的对象: result.data[0].stuff[0].onetype[0] 和 result.data[1].otherstuff[0].thing[0] 这对我来说似乎很笨拙和多余,如果可能的话,我希望: result.stuff.onetype[0] 和 result.otherstuff.thing 但是,当所有内容都是数组时,如何直接使用对象键?在我困惑和未受教育的头脑中,这样的事情似乎更合适: {"data": {"stuff": {"onetype":[ {"id":1,"name": ""}, {"id":2,"name": ""} ]} {"othertype":[ {"id":2,"xyz": [-2,0,2],"n":"Crab Nebula","t":0,"c":0,"d":5} ]} } {"otherstuff": {"thing": [[1,42],[2,2]] } } } 我可能在这里误解了一些基本知识,但是我无法让jQuery解析器(也不是jQuery 1.4使用的本机FF解析器)接受第二个样式对象。如果有人能启发我,将不胜感激!

4
以友好的方式获取ffmpeg信息
每次我尝试使用ffmpeg获取有关我的视频文件的信息时,都会吐出很多无用的信息,混杂着很多好东西。 我正在使用ffmpeg -i name_of_the_video.mpg。 有没有可能以友好的方式实现这一目标?我的意思是JSON会很棒(甚至丑陋的XML也可以)。 到目前为止,我使我的应用程序使用正则表达式解析数据,但是在某些特定的视频文件上却出现了很多讨厌的角落。我已修复所有遇到的问题,但可能还会更多。 我想要类似的东西: { "Stream 0": { "type": "Video", "codec": "h264", "resolution": "720x480" }, "Stream 1": { "type": "Audio", "bitrate": "128 kbps", "channels": 2 } }
108 json  parsing  ffmpeg 

5
Haskell的Prelude.read为什么不返回Maybe?
是否有充分的理由解释为什么Prelude.read是 read :: Read a => String -> a 而不是返回Maybe值? read :: Read a => String -> Maybe a 由于字符串可能无法解析为Haskell,因此后者会更自然吗? 甚至是Either String a,Left如果没有解析,原始的字符串在哪里,如果有Right则返回结果? 编辑: 我并不是想让别人为我写一个相应的包装器。只是想确保这样做是安全的。
108 parsing  haskell  types 

16
Python / Json:期望属性名称用双引号引起来
我一直在尝试找到一种在Python中加载JSON对象的好方法。我发送此json数据: {'http://example.org/about': {'http://purl.org/dc/terms/title': [{'type': 'literal', 'value': "Anna's Homepage"}]}} 到后端,它将在这里作为字符串接收,然后我用来json.loads(data)解析它。 但是每次我遇到同样的异常: ValueError: Expecting property name enclosed in double quotes: line 1 column 2 (char 1) 我用谷歌搜索,但是除了这个解决方案之外json.loads(json.dumps(data))似乎什么都没用,在我个人看来,这种解决方案效率不高,因为它接受任何类型的数据,即使不是json格式的数据也是如此。 任何建议将不胜感激。
108 python  json  parsing 


8
PHP YAML解析器
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 有谁知道一个很好的PHP YAML解析器?如果是这样,此库的优缺点是什么?
105 php  parsing  yaml 

2
什么是上下文无关语法?
有人可以向我解释什么是上下文无关的语法吗?在查看了Wikipedia条目,然后查看了有关正式语法的Wikipedia条目之后,我完全被迷住了。有人会乐于解释这些东西吗? 我想知道这一点是因为我希望研究解析以及正则表达式引擎的局限性。 我不确定这些术语是否与编程直接相关,或者它们是否与语言学总体上更相关。抱歉,如果这样的话,也许可以动议吗?


12
用Java解析INI文件最简单的方法是什么?
我正在用Java替代传统应用程序。要求之一是必须将旧应用程序使用的ini文件原样读取到新的Java应用程序中。此ini文件的格式是常见的Windows样式,带有标题部分和键=值对,使用#作为注释字符。 我尝试使用Java中的Properties类,但是如果不同的标头之间存在名称冲突,那当然是行不通的。 因此,问题是,读取此INI文件和访问密钥的最简单方法是什么?
104 java  parsing  ini 

22
具有优先级的方程式(表达式)解析器?
我已经开发了一种使用简单堆栈算法的方程式解析器,该算法将处理二进制(+,-,|,&,*,/等)运算符,一元(!)运算符和括号。 但是,使用此方法会使我拥有所有具有相同优先级的内容-尽管可以使用括号强制执行优先级,但无论运算符如何,它都是从左到右求值的。 因此,现在“ 1 + 11 * 5”返回60,而不是人们期望的56。 尽管这适用于当前项目,但我希望有一个通用例程,可以用于以后的项目。 为清楚起见进行了编辑: 解析具有优先级的方程的最佳算法是什么? 我对一些易于实现的东西感兴趣,并且了解我可以自己编写代码,以避免可用代码出现许可问题。 语法: 我不懂语法问题-我是用手写的。非常简单,我认为不需要YACC或Bison。我只需要使用诸如“ 2 + 3 *(42/13)”之类的方程式来计算字符串。 语言: 我正在用C进行此操作,但是我对算法感兴趣,而不对特定于语言的解决方案感兴趣。C足够低,可以根据需要轻松转换为另一种语言。 代码示例 我在上面发布了简单表达式解析器的测试代码。项目需求发生了变化,因此我不需要针对性能或空间进行代码优化,因为它没有合并到项目中。它采用原始的冗长形式,应该易于理解。如果我在运算符优先级方面做进一步的事情,我可能会选择宏技巧,因为它可以简单地与程序的其余部分匹配。但是,如果我在实际项目中使用过它,那么我将寻求一个更紧凑/更快速的解析器。 相关问题 数学解析器的智能设计? -亚当

8
LR,SLR和LALR解析器之间有什么区别?
LR,SLR和LALR解析器之间的实际区别是什么?我知道SLR和LALR是LR解析器的类型,但是就它们的解析表而言,实际区别是什么? 以及如何显示语法是LR,SLR还是LALR?对于LL语法,我们只需要显示解析表的任何单元格都不应包含多个生产规则。LALR,SLR和LR是否有类似规则? 例如,如何显示语法 S --> Aa | bAc | dc | bda A --> d 是LALR(1)但不是SLR(1)? 编辑(ybungalobill):对于LALR和LR之间的区别,我没有得到满意的答案。因此,LALR的表较小,但只能识别LR语法的一个子集。有人可以详细说明一下LALR和LR之间的区别吗?LALR(1)和LR(1)就足够回答了。他们都使用1个令牌前瞻和双方都表驱动!它们有何不同?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.