【问题标题】:writing % in NSString在 NSString 中写入 %
【发布时间】:2013-09-01 22:40:46
【问题描述】:
我正在编写一个类似查询的 sqlite。我需要这样的查询:
选择名称,例如 %name%
执行此操作的代码:
str1 = [NSString stringWithFormat:@" ri.name like ' \% %@ \%'", [array objectAtIndex:i]];
但这并没有给我想要的结果。
【问题讨论】:
标签:
ios
objective-c
sqlite
nsstring
escaping
【解决方案1】:
要在格式字符串中使用%,您应该使用%% 而不是\%。
【解决方案2】:
使用这种格式%%而不是/%。并尝试像这样使用
str1=[NSString stringWithFormat:@" ri.name like %% %@ %%",[array objectAtIndex:i]];
【解决方案3】:
谈到SQL,其他人没有说的一件事是您在%characters之前和之后放置空格,
其他答案将打印如下:
@" ri.name like % example %"
这将在您的表中查找带有前后空格的子字符串。
也许你正在寻找的是:
str1 = [NSString stringWithFormat:@" ri.name like ' %%%@%%'", [array objectAtIndex:i]];
将打印的内容:
@" ri.name like %example%"