OC写一个方法获取CSV一行中的某个,号都某个,号
时间: 2024-02-09 15:09:01 浏览: 82
算法一类支持向量机OC-SVM
可以使用 `componentsSeparatedByString:` 方法来获取 CSV 文件中的某一行,然后再使用 `componentsSeparatedByString:` 方法来获取该行中某个逗号之间的内容。
例如,下面的代码可以用来获取 CSV 文件中第一行中第二个逗号和第三个逗号之间的内容:
```objc
NSString *csv = @"name,age,email\nJohn,25,john@example.com\nJane,30,jane@example.com";
NSArray *lines = [csv componentsSeparatedByString:@"\n"];
NSString *firstLine = [lines firstObject];
NSArray *fields = [firstLine componentsSeparatedByString:@","];
NSString *secondField = [fields objectAtIndex:1];
NSString *thirdField = [fields objectAtIndex:2];
NSRange range = [csv rangeOfString:[NSString stringWithFormat:@"%@,%@,", secondField, thirdField]];
if (range.location != NSNotFound) {
NSString *result = [csv substringWithRange:NSMakeRange(range.location + range.length, [csv length] - range.location - range.length)];
NSRange endRange = [result rangeOfString:@","];
if (endRange.location != NSNotFound) {
result = [result substringToIndex:endRange.location];
}
NSLog(@"%@", result); // 输出:john@example.com
}
```
在上面的代码中,首先使用 `componentsSeparatedByString:` 方法将 CSV 文件按行分割,然后获取第一行的内容。接着使用 `componentsSeparatedByString:` 方法将第一行按逗号分割,获取第二个和第三个字段的内容。然后使用 `rangeOfString:` 方法查找第二个逗号和第三个逗号之间的内容在 CSV 文件中的位置,并使用 `substringWithRange:` 方法获取该位置之后的内容。最后使用 `rangeOfString:` 方法查找该内容中第一个逗号的位置,并使用 `substringToIndex:` 方法获取逗号之前的部分作为结果。
阅读全文