在我们解析字符串的时候,经常会需要将特殊符号筛选出来,比如逗号、句号、破折号、分号、省略号等,这时候我们可以使用一个方法将这些一一区分出来。
if ([version rangeOfString:@";"].location != NSNotFound) {
NSLog(@"果真含有这种符号!");
}
可以将引号里面的字符,替换成其他字符。
然后我们找到分号后,应该有一些其他的操作。
比如分别打印出字符前面的字符串和字符后面的字符串。
<pre name="code" class="objc"> NSString * version = @"com.test;1.1";
int location = [version rangeOfString:@";"].location; //标记符号是在哪里出现的
int length = version.length;//标记整个字符串的长度
if (location != NSNotFound) {//判断这个字符串里面是否含有这个字符
NSLog(@"%d",location);
NSString * versionStr = [version substringToIndex:location];//读取符号前面的字符
NSLog(@"versionStr = %@",versionStr);
NSRange range1 = NSMakeRange(location+1, (length-location- 1));//设置符号后面的字符的范围
NSString * subStr = [version substringWithRange:range1];//在整的字符串里面,根据范围打印出字符
NSLog(@"subStr = %@",subStr);
}
打印结果如下:
2015-01-05 11:50:07.088 aa[442:112021] 8
2015-01-05 11:50:07.090 aa[442:112021] versionStr = com.test
2015-01-05 11:50:07.090 aa[442:112021] subStr = 1.1
这样我们就能把符号前后的字符区分开了,是不是很棒呢?