2013-03-11 229 views
14

我有一個字符串「嗨,怎麼樣......你」如何找到兩個字符串之間的子字符串?

我想找到後你..

如何做到這一點的目標C是如何與之前的子串?

+5

你試過了什麼?或者,你在檢查是否有人知道這裏? – 2013-03-11 13:06:43

+3

詢問前是否搜索過?你有什麼嘗試? – 2013-03-11 13:06:51

+0

我檢查了一下,並且我嘗試了一些方法使它不工作.. – Raju 2013-03-12 03:45:55

回答

77

找到兩個字符串的範圍和回報之間的子字符串:

NSString *s = @"hi how are... you"; 

NSRange r1 = [s rangeOfString:@"how"]; 
NSRange r2 = [s rangeOfString:@"you"]; 
NSRange rSub = NSMakeRange(r1.location + r1.length, r2.location - r1.location - r1.length); 
NSString *sub = [s substringWithRange:rSub]; 
+4

看到你回答這個幼稚的問題時,我感到很難過。你在這裏有一個標準。你應該爲年輕的StackOverFlowers留下這些問題;) – 2013-03-11 13:09:29

+13

@AnoopVaidya這同樣令人傷心的是,這些年輕的stackoverflowers只能給出錯誤或毫無意義/不完整的答案。 – 2013-03-11 13:10:53

+0

@ H2CO3:謝謝你的幫助,但它顯示subString =(null)..我在做什麼是我正在一個HTML頁面,並找到一個子字符串..但是當我看到它的HTML頁面顯示字符串,如果我使用任何的子串查找方法其顯示「null」..什麼是你可以告訴我的問題.. – Raju 2013-03-12 04:03:22

0

使用SubstringTOIndex & SubstringFromIndexNSString的功能。其中SubstringFromIndex爲您提供string從您通過的索引& SubstringToIndex函數爲您提供string直到您通過的索引。

也嘗試substringWithRange函數,它返回您在您通過的範圍之間的string

+2

這個答案中沒有什麼解釋如何找到所需的範圍。 – rmaddy 2013-03-11 13:39:14

+0

@rmaddy我剛剛給出了有助於獲取子字符串的函數的名稱。通過使用這個函數,我們可以得到子串,所以不需要提供詳細的答案。 – Girish 2013-03-11 13:43:21

+0

重點是在運行時查找索引。只使用你提出的方法將要求索引被硬編碼。如果這就是需要完成的一切,那麼就不會有問題了。 – rmaddy 2013-03-11 23:58:17

-1

使用substringWithRange ...

NSString* substring = [originalString substringWithRange:NSMakeRange(3, originalString.length-6)]; 
9

你可以使用NSString的方法substringWithRange

NSString *[email protected]"hi how are you"; 
NSRange searchFromRange = [string rangeOfString:@"how"]; 
NSRange searchToRange = [string rangeOfString:@"you"]; 
NSString *substring = [string substringWithRange:NSMakeRange(searchFromRange.location+searchFromRange.length, searchToRange.location-searchFromRange.location-searchFromRange.length)]; 
NSLog(@"subs=%@",substring); //subs= are 
相關問題