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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/43.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
Iphone 从NSMutableArray中删除标点符号_Iphone_Objective C_Ios4 - Fatal编程技术网

Iphone 从NSMutableArray中删除标点符号

Iphone 从NSMutableArray中删除标点符号,iphone,objective-c,ios4,Iphone,Objective C,Ios4,如何从NSMutableArray中删除“,”等标点?假设数组的元素是包含逗号分隔的十六进制数的字符串,下面将生成另一个NSMutableArray,并删除除字母数字字符以外的任何字符 NSMutableArray *array = [NSMutableArray arrayWithObject:@"2f,40d,67f"]; for (int i = 0; i < [array count]; i++) { NSString *element = [array objectAtI

如何从NSMutableArray中删除“,”等标点?

假设数组的元素是包含逗号分隔的十六进制数的字符串,下面将生成另一个NSMutableArray,并删除除字母数字字符以外的任何字符

NSMutableArray *array = [NSMutableArray arrayWithObject:@"2f,40d,67f"];
for (int i = 0; i < [array count]; i++) {
    NSString *element = [array objectAtIndex:i];
    NSMutableString *result = [NSMutableString stringWithCapacity:element.length];
    NSScanner *scanner = [NSScanner scannerWithString:element];  
    NSCharacterSet *allowed = [NSCharacterSet alphanumericCharacterSet];  
    while ([scanner isAtEnd] == NO) {  
        NSString *buffer;  
        if ([scanner scanCharactersFromSet:allowed intoString:&buffer]) {  
            [result appendString:buffer]; 
        } else {        
            [scanner setScanLocation:([scanner scanLocation] + 1)];  
        }  
    }
    [array replaceObjectAtIndex:i withObject:result];
}
NSLog(@"array %@", array);
NSMUTABLEARRY*array=[NSMUTABLEARRY arrayWithObject:@“2f,40d,67f”];
对于(int i=0;i<[数组计数];i++){
NSString*元素=[array objectAtIndex:i];
NSMutableString*result=[NSMutableString stringWithCapacity:element.length];
NSScanner*scanner=[NSScanner scannerWithString:element];
NSCharacterSet*允许=[NSCharacterSet alphanumericCharacterSet];
而([scanner isattend]==NO){
NSString*缓冲区;
如果([scanner scanCharactersFromSet:allowed intoString:&buffer]){
[结果追加字符串:缓冲区];
}否则{
[扫描仪设置扫描位置:([扫描仪扫描位置]+1)];
}  
}
[array replaceObjectAtIndex:i with object:result];
}
NSLog(@“数组%@”,数组);

这将打印
2f40d67f
,但要完成如此简单的工作,似乎需要做很多工作P

假设数组的元素是包含逗号分隔的十六进制数的字符串,下面将生成另一个NSMutableArray,并删除除字母数字字符以外的任何字符

NSMutableArray *array = [NSMutableArray arrayWithObject:@"2f,40d,67f"];
for (int i = 0; i < [array count]; i++) {
    NSString *element = [array objectAtIndex:i];
    NSMutableString *result = [NSMutableString stringWithCapacity:element.length];
    NSScanner *scanner = [NSScanner scannerWithString:element];  
    NSCharacterSet *allowed = [NSCharacterSet alphanumericCharacterSet];  
    while ([scanner isAtEnd] == NO) {  
        NSString *buffer;  
        if ([scanner scanCharactersFromSet:allowed intoString:&buffer]) {  
            [result appendString:buffer]; 
        } else {        
            [scanner setScanLocation:([scanner scanLocation] + 1)];  
        }  
    }
    [array replaceObjectAtIndex:i withObject:result];
}
NSLog(@"array %@", array);
NSMUTABLEARRY*array=[NSMUTABLEARRY arrayWithObject:@“2f,40d,67f”];
对于(int i=0;i<[数组计数];i++){
NSString*元素=[array objectAtIndex:i];
NSMutableString*result=[NSMutableString stringWithCapacity:element.length];
NSScanner*scanner=[NSScanner scannerWithString:element];
NSCharacterSet*允许=[NSCharacterSet alphanumericCharacterSet];
而([scanner isattend]==NO){
NSString*缓冲区;
如果([scanner scanCharactersFromSet:allowed intoString:&buffer]){
[结果追加字符串:缓冲区];
}否则{
[扫描仪设置扫描位置:([扫描仪扫描位置]+1)];
}  
}
[array replaceObjectAtIndex:i with object:result];
}
NSLog(@“数组%@”,数组);

这将打印
2f40d67f
,但要完成如此简单的工作,似乎需要做很多工作P

数组或数组元素中没有逗号。当您使用

NSLog()
记录数组时,它使用NeXTSTEP格式,即括号用于分隔数组,逗号用于分隔元素

所以如果

输出

( 006d, 0081, 006d, 007f )
这意味着数组在第一个位置包含@“006d”,在第二个位置包含@“0081”,在第三个位置包含@“006d”,在第四个位置包含@“007f”

逗号(和括号)只是输出数组表示的一部分;它们本身不是数组/数组元素的一部分

您可以使用以下代码段来输出数组,而不是使用
NSLog()

NSLog(@"beginning of array");
for (id element in myarray) NSLog(@"%@", element);
NSLog(@"end of array");
这将输出如下内容:

beginning of array
006d
0081
006d
007f
end of array

基于注释编辑:看起来您想要加入数组的元素。试试这个:

NSString *allElements = [myarray componentsJoinedByString:@""];
-[NSArray componentsJoinedByString:][/code>方法名是连接数组中的所有元素,并用字符串分隔它们。如果使用
@“
作为分隔字符串,元素将一个接一个地连接起来

如果要输出该字符串:

NSLog(@"%@", allElements);

数组或数组元素中没有逗号。当您使用
NSLog()
记录数组时,它使用NeXTSTEP格式,即括号用于分隔数组,逗号用于分隔元素

所以如果

输出

( 006d, 0081, 006d, 007f )
这意味着数组在第一个位置包含@“006d”,在第二个位置包含@“0081”,在第三个位置包含@“006d”,在第四个位置包含@“007f”

逗号(和括号)只是输出数组表示的一部分;它们本身不是数组/数组元素的一部分

您可以使用以下代码段来输出数组,而不是使用
NSLog()

NSLog(@"beginning of array");
for (id element in myarray) NSLog(@"%@", element);
NSLog(@"end of array");
这将输出如下内容:

beginning of array
006d
0081
006d
007f
end of array

基于注释编辑:看起来您想要加入数组的元素。试试这个:

NSString *allElements = [myarray componentsJoinedByString:@""];
-[NSArray componentsJoinedByString:][/code>方法名是连接数组中的所有元素,并用字符串分隔它们。如果使用
@“
作为分隔字符串,元素将一个接一个地连接起来

如果要输出该字符串:

NSLog(@"%@", allElements);

你的数组包含什么?您是否需要从数组中的所有字符串中删除“,”if is是数组的一个元素,还是删除all“?粘贴一些代码,告诉我们您想要做什么,并且更加具体。我们猜不到你的问题!我有一个NSMUtableArray,它有一组数字。它们用逗号分隔(006d,0081,006d,007f,0072,007a,007f,0073,008e,006f,00a1,006e,00b4,006e,00c2,006e,00ca,这是我的输出想要删除逗号只是为了确保:数组中的每个元素都是一个字符串,包含几个由逗号分隔的值?我正在使用nslog打印数组。T数组获取了一些点我的代码是[myarray addObject:[NSString stringWithFormat:@“%04x”,(NSInteger)lastPoint.x];[myarray addObject:[NSString stringWithFormat:@“%04x”,(NSInteger)lastPoint.y];NSLog(@“%@),myarray;数组包含什么?是否需要删除“,”如果是数组的元素,还是删除所有“,”从数组中的所有字符串中?粘贴一些代码,告诉我们您想要做什么,并且更具体。我们无法猜测您的问题!我有一个NSMUtableArray,它有一组数字。它们用逗号分隔(006d,0081,006d,007f,0072,007a,007f,0073,008e,006f,00a1,006e,00b4,006e,00c2,006e,00ca,这是我想要删除逗号的输出