2013-03-28 200 views
0

我想從'/Application/Mobile/Lib/123.abc' 獲得123.abc字符串'123.abc'具有隨機長度。 我該怎麼做在字符'?'之後從字符串中獲取最後一個字符串

+0

'/應用/移動/庫/'一樣總是 – Dilip 2013-03-28 04:32:28

+0

鑑於一些輸入,什麼是您在部分你要開始告訴規則?字符串應該表示文件路徑嗎?你想要文件名嗎?或者只是什麼? – 2013-03-28 04:35:23

+0

嘗試獲取字符串的最後部分。您可以從反向字符串中獲取最後一個「/」。所以,「123.abc」的大小並不重要。 – 2013-03-28 04:39:19

回答

0
NSString * lastString = [@"/Application/Mobile/Lib/123.abc" lastPathComponent]; 
NSLog(@"Last String : %@",lastString); 
+0

同意,但sosborn和V-Xtreme擊敗你。 – danh 2013-03-28 04:40:09

1

使用lastPathComponent NSString的方法。

NSString *myString = @"/Application/Mobile/Lib/123.abc"; 
NSString *lastPath = [myString lastPathComponent]; 
//lastPath would be equal to 123.abc (or whatever the last path component is. 
+0

我用過:[[myString componentsSeparatedByString:@「/」] lastObject] – user1561904 2013-03-28 04:35:35

+1

這給出了相同的結果。它可能會使用更多的內存(因爲它必須創建一個數組然後查詢它),但有可能lastPathCompnent以相同的方式實現。 – sosborn 2013-03-28 04:36:58

+0

不確定內存,但這是優越的答案。 – danh 2013-03-28 04:37:50

0

使用此:

NSString *[email protected]"'/Application/Mobile/Lib/123.abc"; 
NSArray *strings = [content componentsSeparatedByString:@"'/"]; 
    NSLog(@"strings..:%@",strings); 
    NSString *str1=[strings objectAtIndex:1]; 
    NSArray *string2 = [str1 componentsSeparatedByString:@"/"]; 
    NSString *final=[string2 objectAtIndex:3]; 
    NSString *finalString = [final stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]; 
    NSLog(@"finalString..:%@",finalString); 
+0

你可以加入http://chat.stackoverflow.com/rooms/27389/agile-methodology – Rushi 2013-04-02 08:37:57

0

使用本:

NSString *fileName=[str lastPathComponent]; 

這會爲你工作。

+0

同意,但sosborn擊敗你。 – danh 2013-03-28 04:39:53

+0

@danh:是的,希望下次我會。 – 2013-03-28 05:00:43

相關問題