Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 如何从字符串中删除\r?_Objective C_Nsstring - Fatal编程技术网

Objective c 如何从字符串中删除\r?

Objective c 如何从字符串中删除\r?,objective-c,nsstring,Objective C,Nsstring,我不知道为什么,但从源代码返回的字符串最后带有“\r”,看起来是这样的,“string\r”,但当我在调试窗口中打印它时,它只会将其视为“string”,但当我使用isEqualToString:进行比较时,它总是返回false,即使在调试窗口中它们都相似试试这个 NSString *string = @"Whats Going on\r"; NSString *result = [string stringByTrimmingCharactersInSet:[NSCharacterSet ne

我不知道为什么,但从源代码返回的字符串最后带有“\r”,看起来是这样的,“string\r”,但当我在调试窗口中打印它时,它只会将其视为“string”,但当我使用
isEqualToString:
进行比较时,它总是返回false,即使在调试窗口中它们都相似

试试这个

NSString *string = @"Whats Going on\r";
NSString *result = [string stringByTrimmingCharactersInSet:[NSCharacterSet newlineCharacterSet]];
或者用我们用来将分词字符串替换为字符串的简单方法。像

string = [string stringByReplacingOccurrencesOfString:@"\r" withString:@" "];
试试这个

NSString *string = @"Whats Going on\r";
NSString *result = [string stringByTrimmingCharactersInSet:[NSCharacterSet newlineCharacterSet]];
或者用我们用来将分词字符串替换为字符串的简单方法。像

string = [string stringByReplacingOccurrencesOfString:@"\r" withString:@" "];

您可以使用以下方法

- (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target 
                                    withString:(NSString *)replacement
例如:

NSString *string = [myString stringByReplacingOccurrencesOfString:@"\r"
                                                           withString:@""];

您可以使用以下方法

- (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target 
                                    withString:(NSString *)replacement
例如:

NSString *string = [myString stringByReplacingOccurrencesOfString:@"\r"
                                                           withString:@""];

我目前正在开发一个客户端服务器应用程序,在数据传输结束时没有遇到任何与
\r
有关的问题。但是你说的是
/r
,我想,就这样吧

由于它仅位于字符串的末尾,并且您不希望删除字符串中出现的任何其他内容(如上所述):

现在,如果出现类型错误,您也可以这样做,但这次只从字符串中删除一个字符,因为
\r
是转义字符,并且只有一个字符
'\r'

yourStr = [yourStr substringToIndex:[yourStr length]-1]

希望有帮助:)

我目前正在开发一个客户端-服务器应用程序,在数据传输结束时没有遇到任何问题。但是你说的是
/r
,我想,就这样吧

由于它仅位于字符串的末尾,并且您不希望删除字符串中出现的任何其他内容(如上所述):

现在,如果出现类型错误,您也可以这样做,但这次只从字符串中删除一个字符,因为
\r
是转义字符,并且只有一个字符
'\r'

yourStr = [yourStr substringToIndex:[yourStr length]-1]

希望有帮助:)

您可以从NSString中删除
\r
,但最好首先确保它不会到达NSString。如果您正在阅读一个文本文件,您可能会得到它们,因为源代码对行尾有一种奇怪的想法。与macOS上的Excel 16(!)类似,在导出.csv文件时。我确实选择UTF8作为导出文本格式,但最后在字符串的末尾出现了
\r
。使用VIM读取和保存文件时,您可以看到文件格式为
[dos]
,或者,发出命令
:set ff?
,VIM将告诉您
fileformat=dos
。将文件格式更改为unix:
:set ff=unix
一切正常,
\r
消失


解决方案来源:

您可以从NSString中删除
\r
,但最好首先确保它不会到达NSString。如果您正在阅读一个文本文件,您可能会得到它们,因为源代码对行尾有一种奇怪的想法。与macOS上的Excel 16(!)类似,在导出.csv文件时。我确实选择UTF8作为导出文本格式,但最后在字符串的末尾出现了
\r
。使用VIM读取和保存文件时,您可以看到文件格式为
[dos]
,或者,发出命令
:set ff?
,VIM将告诉您
fileformat=dos
。将文件格式更改为unix:
:set ff=unix
一切正常,
\r
消失


解决方案来源:

您确定它不是
\r
?斜杠的方向很重要。只是一个打字错误,先生,对不起,你确定不是
\r
?斜杠的方向很重要。只是一个输入错误,sir sorrystring=[string stringByReplacingOccurrencesOfString:@“\r”with string:@”“];->我在问之前试过了,但没用幸运的是,修边成功了,谢谢,先生,我可以在3分钟内接受mins@BryanPosas-可能“ByReplace”失败,因为斜杠方向被弄乱了。string=[string stringByRepllacingOccurrencesofstring:@“\r”with string:@”“];->我在问之前试过了,但没用幸运的是,修边成功了,谢谢,先生,我可以在3分钟内接受mins@BryanPosas-可能“ByReplacing”失败是因为斜杠方向弄乱了。[string stringByTrimmingCharactersInSet:[NSCharacterSet newlineCharacterSet]]帮我搞定了,但是我从来不知道\r只有1个字符,所以谢谢你,不幸的是我仍然无法向上投票[string stringByTrimmingCharactersInSet:[NSCharacterSet newlineCharacterSet]]为我做了这件事,但我从来不知道\r只有1个字符,所以谢谢你,不幸的是我仍然无法向上投票