nsstring字符串的截取

NSString类中提供了这样三个方法用于获取子字符串:

  • substringFromIndex:
  • substringWithRange:
  • substringToIndex:

具体的使用见下面代码即可知道。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
NSString *str = @"12345";





NSString *subString1 = [str substringFromIndex:0]; //@"12345"

NSString *subString2 = [str substringFromIndex:1]; //@"2345"

NSString *subString3 = [str substringFromIndex:4]; //@"5"

NSString *subString4 = [str substringFromIndex:5]; //@""

// NSString *subString5 = [str substringFromIndex:6]; //会放生越界错误



// NSString *subString10 = [str substringToIndex:-1]; //会放生越界错误

NSString *subString11 = [str substringToIndex:0]; //@"“

NSString *subString12 = [str substringToIndex:1]; //@"1”

NSString *subString13 = [str substringToIndex:4]; //@"1234“

NSString *subString14 = [str substringToIndex:5]; //@"12345”

// NSString *subString15 = [str substringToIndex:6]; //会放生越界错误



NSRange range1 = NSMakeRange(-1, 5);

NSRange range2 = NSMakeRange(0, 6);

NSRange range3 = NSMakeRange(0, 5);

NSRange range4 = NSMakeRange(1, 4);

NSRange range5 = NSMakeRange(0, 0);

NSRange range6 = NSMakeRange(4, 1);



//NSString *subString31 = [str substringWithRange:range1]; //会放生越界错误

//NSString *subString32 = [str substringWithRange:range2]; //会放生越界错误

NSString *subString33 = [str substringWithRange:range3]; //@"12345“

NSString *subString34 = [str substringWithRange:range4]; //@"2345”

NSString *subString35 = [str substringWithRange:range5]; //@"”

NSString *subString36 = [str substringWithRange:range6]; //@"5”