从字符串中删除特殊字符

Remove Special Character From String

我有一个字符串 W

        NSString * stringTitle  = link.title;

我在哪里得到 link.title 作为@"I_AM_GOOD";

我需要删除特殊字符“_”并使之成为"I am Good"。该怎么做?

您还没有定义特殊字符的含义,您似乎想用 space 替换它,而不是删除它。

NSArray * comps = [stringTitle componentsSeparatedByString:@"_"]

NSString * result = nil;
for(NSString *s in comps)
{
   if(result)
   {
      result = [result stringByAppendingFormat:@" %@",[s capitalizedString];
   }
   else
   {
       result = [s capitalizedString];
   }
}

如果您有其他要替换的特殊字符,请使用

-componentsSeparatedByCharactersInSet:

从字符串中替换任何字符的最简单方法如下。确保使用 NSMutableString.

[stringTitle replaceOccurrencesOfString:@"_" withString:@"" options:NSCaseInsensitiveSearch range:NSMakeRange(0,[stringTitle length])];

最简单的方法

strTest = [strTest stringByReplacingOccurrencesOfString:@"_" withString:@" "];