仪表:
我有一个 JSON,我必须从中获取“ci”的值。
我正在使用以下正则表达式:ci:\s*(.*?)\" 并得到以下结果正则表达式测试器:匹配计数:1 匹配1 [0]=ci:434547" 匹配1 =434547
问题是匹配1 [0] 有空格,因为在运行负载测试时它说:服务器错误 - 无法将 JSON 转换为对象
需要帮助是更正此 RegEx。
基本上,您的 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 那样安全/可靠(因为它假设某些特定条件),但它可能适用于您的情况,因为您不必查找组而只需使用整个匹配的文本。告诉我它是否有帮助!