【发布时间】:2012-08-09 20:44:49
【问题描述】:
我有以下正则表达式..
(^\[[.*][[0-9a-zA-Z][0-9a-zA-Z]]*[.*]\])
这意味着只匹配像这样的非空 JSON 编码字符串......
[ { object: HELLO } ]
同时排除“空”JSON 响应,例如...
[ ]
这些响应中可能有也可能没有空格。
我的正则表达式似乎适用于某些情况,即。
[ ] <---- does not match.
[ HELLO ] <---- matches.
[ { HELLO } ] <---- does not match.
我不太关心 JSON 的实际有效性,而是确保[] 中除了空白之外还有其他内容
最好的检查方法是什么?
【问题讨论】:
-
上下文是什么?为什么不简单地解析 JSON?
[ { object: HELLO } ]不是 JSON 顺便说一句。由于 JSON 包含嵌套结构,因此您需要一个递归正则表达式引擎。 -
我同意@FelixKling:您应该使用专用的 JSON 解析器。正则表达式不够健壮,而且有很多 JSON 解析器。
-
你使用什么编程语言?