gpt4 book ai didi

android - 正则表达式如何从json中提取数据

转载 作者:行者123 更新时间:2023-11-30 03:59:20 27 4
gpt4 key购买 nike

我有一个在我的应用程序中使用的 json 数组,我需要它以那种形式出现在其他地方,所以我必须保持这种方式。我将它保存在我的数据库中的一个表中,并在需要时反序列化它。但现在我想执行一个查询来过滤其中的一些数据。

示例 json

[{"name":"SampleName","surname":"SampleSurname"}]

我希望能够做一个只给我“”内的字符串的正则表达式。就像我想要名字一样,它给了我不带引号的“SampleName”我怎样才能做到这一点?

编辑!

我已经在需要使用 JSON 时对其进行了解析。我刚刚在我的数据列表上实现了一个过滤器,并希望直接从 SQL 中过滤查询而无需反序列化。

所以我想做的是执行类似于以下操作的查询:从名称如 regexp'regexhere' 的联系人中选择 * 并仅返回与我的搜索匹配的名称。我知道我可以解析 json 并获得更好的结果,我想知道一个“更快”的替代方案

最佳答案

在 java 中,您可以使用带模式匹配的正则表达式。

String result;
String str= "[{"+
"name"+
":"
+"SampleName"
+","+
"surname"+
":"+
"SampleSurname"+
"}]";
String regex ="[a-zA-Z]+";//matches only characters from a-z or A-Z
Matcher matcher = Pattern.compile( regex ).matcher( str);
while (matcher.find( ))
{
result = matcher.group();
System.out.println(result);
}
output
name
SampleName
surname
SampleSurname

关于android - 正则表达式如何从json中提取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12778280/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com