1

我有以下字符串

NSString *word1=@"hitoitatme";

如您所见,如果要在每个第二个字符后添加一个空格,则它将是一串包含最少/最多 2 个字符的单词。

NSString *word2=@"hi to it at me";

我希望能够在每 2 个字符后向我的字符串添加一个空白字符空间。我该怎么做呢?所以如果我有一个像word1这样的字符串,我可以添加一些代码让它看起来像word2?如果可能的话,我正在寻找最有效的方法。

先感谢您

4

2 回答 2

7

在字符串中添加空格可能有不同的方法,但一种方法可能是使用NSRegularExpression

  NSString *originalString = @"hitoitatme";
  NSRegularExpression *regexp = [NSRegularExpression regularExpressionWithPattern:@"([a-z])([a-z])" options:0 error:NULL];
  NSString *newString = [regexp stringByReplacingMatchesInString:originalString options:0 range:NSMakeRange(0, originalString.length) withTemplate:@"$0 "];
  NSLog(@"Changed %@", newString);//hi to it at me
于 2013-03-23T02:41:27.803 回答
5

你可以这样做:

NSString *word1=@"hitoitatme";
NSMutableString *toBespaced=[NSMutableString new];

for (NSInteger i=0; i<word1.length; i+=2) {
    NSString *two=[word1 substringWithRange:NSMakeRange(i, 2)];
    [toBespaced appendFormat:@"%@  ",two ];
}

NSLog(@"%@",toBespaced);
于 2013-03-23T03:44:05.300 回答