有没有办法在Objective C中的字符串中使用双引号而不转义它们?

时间:2015-12-30 20:45:39

标签: objective-c

有没有办法在Objective C中的字符串中使用双引号而不转义它们?

在PHP中,您可以将字符串包装在单引号中,在这种情况下,您不必转义字符串中的任何内容。

3 个答案:

答案 0 :(得分:1)

唯一的机会是将源代码编译为Objective-C ++文件 (文件后缀" .mm")。然后在定义- hosts: all vars_prompt: - name: CONFIRM prompt: Just to confirm you will install stuff pre_tasks: - fail: no deployment this time when: CONFIRM != 'yes' roles: - common - install_nginx 时也接受C++ raw string literals, 例如

NSString

有13个字符

NSString *str = @R"(Hello"World\n)";

但该功能仅适用于(Objective-)C ++源文件, 不在(目标 - )C。

答案 1 :(得分:0)

不幸的是,没有办法(我知道)在Objective-C中的字符串中有一个未转义的引号。你可以使用unicode或其他技巧获得引号,但我相信你想要一种不那么丑陋的方式在字符串中写一个引号,而不是一个更丑陋的引号:)

P.S。为了好玩,我刚刚尝试使用unicode转义序列(@"\u0022"),结果发现it is forbidden

答案 2 :(得分:-1)

卷曲引用不需要转义,并且通常看起来更好地呈现给最终用户的消息:

    NSString *str = @"Hello, “World”!";