Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.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
Ios 从字符串中删除以符号开头的单词_Ios_Objective C - Fatal编程技术网

Ios 从字符串中删除以符号开头的单词

Ios 从字符串中删除以符号开头的单词,ios,objective-c,Ios,Objective C,我试图从字符串中删除以符号开头的单词 NSSting *string =@"Hello #world #ok"; 我试图从这个字符串中删除单词“#world”和“#ok”,因为它们以#开头 所以我的绳子现在应该是这样的 "Hello" 首先在数组中拆分字符串 NSArray* arr = [@"Hello #world #ok" componentsSeparatedByString: @" "]; 然后检查是否出现# 首先在数组中拆分字符串 NSArray* arr = [@"Hel

我试图从字符串中删除以符号开头的单词

NSSting *string =@"Hello #world #ok";
我试图从这个字符串中删除单词
“#world”
“#ok”
,因为它们以#开头 所以我的绳子现在应该是这样的

"Hello"

首先在数组中拆分字符串

 NSArray* arr = [@"Hello #world #ok" componentsSeparatedByString: @" "];
然后检查是否出现
#


首先在数组中拆分字符串

 NSArray* arr = [@"Hello #world #ok" componentsSeparatedByString: @" "];
然后检查是否出现
#


1.使用空格拆分字符串:

NSArray* splitArr = [@"Hello #world #ok" componentsSeparatedByString: @" "];
2.删除包含“#”的字符串并创建新字符串

NSMutableString* finalStr = [[NSMutableString alloc] init];
for(NSString* str in splitArr) {
    if(![str hasPrefix:@"#"])
         [finalStr appendString:[NSString stringWithFormat:@"%@ ",str]];
} 

最后一个字符串将是您所需的字符串。

1.使用空格拆分字符串:

NSArray* splitArr = [@"Hello #world #ok" componentsSeparatedByString: @" "];
2.删除包含“#”的字符串并创建新字符串

NSMutableString* finalStr = [[NSMutableString alloc] init];
for(NSString* str in splitArr) {
    if(![str hasPrefix:@"#"])
         [finalStr appendString:[NSString stringWithFormat:@"%@ ",str]];
} 
最后一个字符串将是您所需的字符串。

尝试以下操作:

NSString *str1 = @"Hello your bal = 68094";
NSRange range = [str1 rangeOfString:@"="];
if (range.location != NSNotFound) {
  NSString *newString = [str1 substringToIndex:range.location];
  NSLog(@"%@",newString);
} else {
  NSLog(@"= is not found");
}
试试这个:

NSString *str1 = @"Hello your bal = 68094";
NSRange range = [str1 rangeOfString:@"="];
if (range.location != NSNotFound) {
  NSString *newString = [str1 substringToIndex:range.location];
  NSLog(@"%@",newString);
} else {
  NSLog(@"= is not found");
}

以下代码可能有帮助:

    NSCharacterSet * set = [[NSCharacterSet characterSetWithCharactersInString:@"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLKMNOPQRSTUVWXYZ0123456789"] invertedSet];;

    NSString *string =@"Hello #world #ok";

    NSMutableArray *arr=[[NSMutableArray alloc]initWithArray:[string componentsSeparatedByString:@" "]];

    for (int i=0; i<arr.count; i++) {

        if ([[arr objectAtIndex:i] rangeOfCharacterFromSet:set].location != NSNotFound) {

            string=[string stringByReplacingOccurrencesOfString:[arr objectAtIndex:i] withString:@""];
        }
    }


    string = [string stringByTrimmingCharactersInSet:
                               [NSCharacterSet whitespaceCharacterSet]];
NSCharacterSet*set=[[NSCharacterSet characterSetWithCharactersInString:@“abcdefghijklmnopqrstuvwxyzabefghijklkmnopqrstuvxyz012456789”]invertedSet];;
NSString*string=@“你好#世界#好”;
NSMUTABLEARRY*arr=[[NSMUTABLEARRY alloc]initWithArray:[字符串组件由字符串分隔:@”“];

对于(int i=0;i可能在下面),代码可以帮助:

    NSCharacterSet * set = [[NSCharacterSet characterSetWithCharactersInString:@"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLKMNOPQRSTUVWXYZ0123456789"] invertedSet];;

    NSString *string =@"Hello #world #ok";

    NSMutableArray *arr=[[NSMutableArray alloc]initWithArray:[string componentsSeparatedByString:@" "]];

    for (int i=0; i<arr.count; i++) {

        if ([[arr objectAtIndex:i] rangeOfCharacterFromSet:set].location != NSNotFound) {

            string=[string stringByReplacingOccurrencesOfString:[arr objectAtIndex:i] withString:@""];
        }
    }


    string = [string stringByTrimmingCharactersInSet:
                               [NSCharacterSet whitespaceCharacterSet]];
NSCharacterSet*set=[[NSCharacterSet characterSetWithCharactersInString:@“abcdefghijklmnopqrstuvwxyzabefghijklkmnopqrstuvxyz012456789”]invertedSet];;
NSString*string=@“你好#世界#好”;
NSMUTABLEARRY*arr=[[NSMUTABLEARRY alloc]initWithArray:[字符串组件由字符串分隔:@”“];
对于(int i=0;i第1步:

NSArray* splitArr = [@"Hello #world #ok" componentsSeparatedByString: @" "];
步骤2:

NSString *myString = @"";
for(NSString *str in splitArr)
{
  NSString *firstLetter = [str substringToIndex:0];
  if(![firstLetter isEqualToString:@"#"])
  {  
     myString = [NSString stringWithFormat:@"%@ %@",myString,str];
  }
}
步骤1:

NSArray* splitArr = [@"Hello #world #ok" componentsSeparatedByString: @" "];
步骤2:

NSString *myString = @"";
for(NSString *str in splitArr)
{
  NSString *firstLetter = [str substringToIndex:0];
  if(![firstLetter isEqualToString:@"#"])
  {  
     myString = [NSString stringWithFormat:@"%@ %@",myString,str];
  }
}

这是@Ilanchezhian答案这里这是@Ilanchezhian答案这里是Yesmine你对下面的答案满意吗?或者你想要任何其他非常简单的解决方案吗?Yesmine你对下面的答案满意吗?或者你想要任何其他非常简单的解决方案吗?为什么不使用
NSMutableString
而不是创建一个字符串自动释放
NSString
对象?您可以使用
hasPrefix:
检查“#”无需每次创建额外的NSString。@Alberrenshaw感谢您的建议。我不知道
hasPrefix:
。感谢您展示了新方法。我将在一段时间内更新我的答案。为什么不使用
NSMutableString
而不是创建umteen自动发布
NSString
对象?您可以使用
hasPrefix:
检查“#”而不每次创建额外的NSString。@Albertenshaw感谢您的建议。我不知道
hasPrefix:
。感谢您展示了新的方式。我将在一段时间内更新我的答案。我已将您的
containssString:
编辑为
hasPrefix:
,因为OP正在查找以“#”开头的单词要删除,不要删除任何带有“#”的单词。我已将您的
containsString:
编辑为
hasPrefix:
,因为OP正在查找以“#”开头的单词,而不是任何带有“#”的单词。