在Objective-C中解析HTML代码实现原理

移动开发 iOS
本文介绍的是在Objective-C中解析HTML代码实现原理,主要是通过代码来实现在Objective-C中如何解析HTML,来看本文详细介绍。

Objective-C中解析HTML代码实现原理是本文要介绍的内容, 内容不多,主要是通过代码实现解析HTML的过程,希望本文对你有帮助。我们来看详细内容实现。

  1. #import "StringChuLi.h"  
  2. /*  
  3. 项目作用:链接网络解析html  
  4.  */  
  5.  
  6. @implementation StringChuLi  
  7.  
  8. //访问网页源码  
  9. -(NSString *)urlString:(NSString *)value{  
  10. NSURL *url = [NSURL URLWithString:value];  
  11. NSData *data = [NSData dataWithContentsOfURL:url];    
  12. //解决中文乱码,用GBK  
  13. NSStringEncoding enc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);      
  14. NSString *retStr = [[NSString alloc] initWithData:data encoding:enc];  
  15. return retStr;  
  16. }  
  17. /*  
  18.  作用:截取从value1到value2之间的字符串  
  19.  str:要处理的字符串  
  20.  value1:左边匹配字符串  
  21.  value2:右边匹配字符串  
  22.  */  
  23. -(NSString *)str:(NSString *)str value1:(NSString *)value1 value2:(NSString *)value2{  
  24. //i:左边匹配字符串在str中的下标  
  25. int i;  
  26. //j:右边匹配字符串在str1中的下标  
  27. int j;  
  28. //该类可以通过value1匹配字符串  
  29. NSRange range1 = [str rangeOfString:value1];  
  30. //判断range1是否匹配到字符串  
  31. if(range1.length>0){  
  32. //把其转换为NSString  
  33. NSString *result1 = NSStringFromRange(range1);  
  34. i = [self indexByValue:result1];  
  35. //原因:加上匹配字符串的长度从而获得正确的下标  
  36. ii = i+[value1 length];  
  37. }  
  38. //通过下标,删除下标以前的字符  
  39. NSString *str1 = [str substringFromIndex:i];  
  40. NSRange range2 = [str1 rangeOfString:value2];  
  41. if(range2.length>0){  
  42. NSString *result2 = NSStringFromRange(range2);  
  43. j = [self indexByValue:result2];  
  44. }  
  45. NSString *str2 = [str1 substringToIndex:j];  
  46. return str2;  
  47. }  
  48.  
  49. //过滤获得的匹配信息的下标  
  50. -(int)indexByValue:(NSString *)str{  
  51. //使用NSMutableString类,它可以实现追加  
  52. NSMutableString *value = [[NSMutableString alloc] initWithFormat:@""];  
  53. NSString *colum2 = @"";  
  54. int j = 0;  
  55. //遍历出下标值  
  56. for(int i=1;i<[str length];i++){  
  57. NSString *colum1 = [str substringFromIndex:i];  
  58. [value appendString:colum2];  
  59. colum2 = [colum1 substringToIndex:1];  
  60. if([colum2 isEqualToString:@","]){  
  61. j = [value intValue];  
  62. break;  
  63. }  
  64. }  
  65. [value release];  
  66. return j;  
  67. }  
  68. @end 

小结:在Objective-C中解析HTML代码实现原理的内容介绍完了,希望本文对你有所帮助!

责任编辑:zhaolei 来源: CocoaChina
相关推荐

2013-03-27 12:54:00

iOS开发Objective-C

2011-08-10 18:07:29

Objective-C反射

2013-06-20 10:40:32

Objective-C实现截图

2011-07-27 16:18:42

Objective-c 协议

2011-05-11 14:06:49

Objective-C

2011-08-11 17:39:25

Objective-C笔试题

2011-08-05 15:46:32

Objective-C 程序设计

2013-03-26 10:35:47

Objective-C单例实现

2015-11-18 10:16:38

OC代码

2014-05-21 14:03:57

Objective-C代码规范Code Style

2011-07-19 17:24:31

Objective-C 对象

2011-08-15 14:02:36

Objective-C

2011-07-29 16:08:31

Objective-C 内存

2015-07-08 16:07:19

iOSObjective-C

2011-08-15 17:47:13

Objective-CisMemberOfC

2011-08-22 09:34:50

Objective-C多态动态类型

2011-07-18 16:48:02

Cocoa Objective-

2011-07-21 09:42:27

Objective-C 内存 Autoreleas

2011-07-19 15:15:09

Objective-C 内存

2011-05-11 11:20:26

Objective-C
点赞
收藏

51CTO技术栈公众号