【发布时间】:2021-11-29 08:09:24
【问题描述】:
{"dir":"false", "bytes":158481, "parent_folder":"/Annie/FROM OLD DVDS", "name":"1.jpg"}, {"dir":"false" , "bytes":382661, "parent_folder":"/Annie/FROM OLD DVDS", "name":"2.jpg"}, {"dir":"false", "bytes":1455205, "parent_folder": "/Annie/FROM OLD DVDS", "name":"3.jpg"}
这是我当前的 REGEX 字符串,它只捕获第一个匹配项:
(false.+\"name\"\:\")(.+\.(jpg|jpeg|png))(\")
我想捕捉每个名字,而不仅仅是第一个。目前它只解析最后一个 3.jpg。
想要的结果:
1.jpg、2.jpg、3.jpg
【问题讨论】:
-
你为什么要使用正则表达式?这是(编辑:几乎)JSON。您是否缺少一些方括号?你用什么语言工作?
-
是的。输出为 JSON。但我的问题是,有时它会捕获一个文件夹,这使得 dir 值 - true。我希望有更好的选择。我的知识仅限于 JSON/JToken 解析。语言是 C#。如果可能,我想只使用 JSON/XPath/Regex 进行解析。
-
问题是,你有一个对象数组。每个对象都有一个
dir、bytes、parent_folder和name属性。您只需要每个的name属性。查找您想与 C# 一起使用的任何 JSON 库。也许this page. -
如果可能的话,我只是在寻找关于正则表达式的快速解决方案。
-
给出示例时的基本规则是显示所需的返回值。