0

在此处输入图像描述在此处输入图像描述仪表:

我有一个 JSON,我必须从中获取“ci”的值。

我正在使用以下正则表达式:ci:\s*(.*?)\" 并得到以下结果正则表达式测试器:匹配计数:1 匹配1 [0]=ci:434547" 匹配1 =434547

问题是匹配1 [0] 有空格,因为在运行负载测试时它说:服务器错误 - 无法将 JSON 转换为对象

需要帮助是更正此 RegEx。

4

1 回答 1

0

基本上,您的 RegEx 没问题。这也是我寻找它的方式,第一组(Match[1])会给你434613,这是你正在寻找的价值。由于我不知道您正在使用该软件,因此我不知道为什么仅使用该匹配项不起作用。

这是解决此问题的一个想法:如果该值始终是字符串中唯一的数值,则可以将 RegEx 简化为:

\d+

这将为您提供至少 1 位长的数值。如果字符串中还有其他数值,但它们的长度不同,请尝试以下操作:

\d{m,n}   --> between m and n digits long
\d{n,}    --> at least n digits long
\d{0,n}   --> not more than n digits long

这不像原始 RegEx 那样安全/可靠(因为它假设某些特定条件),但它可能适用于您的情况,因为您不必查找组而只需使用整个匹配的文本。告诉我它是否有帮助!

于 2013-06-17T12:05:01.903 回答