【问题标题】:JSON containing a regular expression in Objective C在 Objective C 中包含正则表达式的 JSON
【发布时间】:2014-12-27 13:23:35
【问题描述】:
  • 这是一个由 Web 服务以 JSON 格式返回的字段值 ^\+?\d+(-\d+)*$,但当我得到它时,它变成了 ^+?d+(-d+)*$
  • 但我需要来自 JSON 的原始文件。如何从目标 C 中得到相同的结果。

例如:如果我使用NSString *string=@"^\+?\d+(-\d+)*$";, 它在NSLog 中显示^+?d+(-d+)*$。如何预防?

谢谢

【问题讨论】:

  • 它没有被正确编码/解码。没有更多信息,尚不清楚哪一方有过错。
  • 它实际上来自网络服务......我实际上想得到响应......可能吗?
  • JSON 编码器将考虑输入字符串中的转义字符并进一步转义 them 以保留正则表达式。如果没有发生这种情况,则编码器已损坏,您在客户端无能为力。也就是说,如果您正确解码它们。但是你没有显示代码,所以谁知道呢?
  • 我不同意你提供的例子;这不是真的。
  • 问题已编辑...请立即查看。

标签: objective-c json web-services unicode-escapes


【解决方案1】:

您应该在响应中添加转义字符。通过以下方式从 Web 服务获取响应。告诉您的 Web 服务开发人员按以下方式格式化响应。可以通过添加转义序列来接收字符'\'。

 ^\\+?\\d+(-\\d+)*$

【讨论】:

  • 感谢您的回答..但是是否可以在不更改或修剪的情况下保持字符串的原始格式?
  • 在编码 json 之前,您只需在 php 代码中使用 \\ 而不是 \
猜你喜欢
  • 2014-05-08
  • 2011-05-23
  • 2016-02-05
  • 1970-01-01
  • 2014-01-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多