0

大家好,我正在尝试在字符串中查找字符串假设我有一个字符串:

单词1/单词2/单词3

我想找到从字符串末尾到最后一个“/”的单词,所以我将从该字符串中得到的是:

字3

我怎么做?谢谢!

4

6 回答 6

5

您正在寻找componentsSeparatedByString:方法

NSString *originalString = @"word1/word2/word3";
NSArray *separatedArray = [originalString componentsSeparatedByString:@"/"];
NSString *lastObject = [separatedArray lastObject]; //word3
于 2013-04-30T07:19:47.983 回答
3

一旦检查这个通过使用这个你会得到最后一个路径组件值,

NSString* theFileName = @"how /are / you ";
    NSString *str1=[theFileName lastPathComponent];
    NSLog(@"%@",str1);

通过使用 lastPathComponent ,您将直接获得最后一个路径组件,无需使用数组来分隔字符串。

于 2013-04-30T07:19:03.870 回答
2
NSString *string = @"word1/word2/word3"
NSArray *arr = [string componentsSeperatedByString:@"/"];
NSSting *str = [arr lastObject];
于 2013-04-30T07:12:54.007 回答
2

您必须使用 NSScanner 类来拆分子字符串。

检查这个。

目标 C:如何提取字符串的一部分(例如以 '#' 开头)

于 2013-04-30T07:15:24.250 回答
2

您也可以通过以下方式找到它:

NSMutableString *string=[NSMutableString stringWithString:@"word1/word2/word3"];
NSRange range=[string rangeOfString:@"/" options:NSBackwardsSearch];
NSString *subString=[string substringFromIndex:range.location+1];
于 2013-04-30T07:23:20.993 回答
1

NSRegularExpressionNSString rangeOfString:options:range:locale:(带有向后搜索的选项)。

答案实际上取决于输入字符串将包含的确切内容(它的一致性)。

于 2013-04-30T07:15:48.743 回答