2012-08-02 41 views
0

我有一個是從的WebAPI調用看起來像這樣返回的字符串:提取從兩個括號一個NSString和語錄

(
    "[email protected]" 
    ) 

作爲一種變通方法,我想也就是用戶名只提取電子郵件地址@ domain.com

我不知道什麼是最好的方法來做到這一點,因爲我在括號和引號內提取數據。

任何指針(沒有雙關語意)感謝。

+0

不是偶然的Web客戶端返回JSON難道?像'[「[email protected]」]'? – 2012-08-02 12:06:29

回答

2

最簡單的方法是使用stringByTrimmingCharactersInSet:

NSString *source = /* your source */; 
NSCharacterSet *charSet = 
    [NSCharacterSet characterSetWithCharactersInString:@" \"()\n"]; 
NSString *email = [source stringByTrimmingCharactersInSet:charSet]; 

哈爾德一個涉及NSRegularExpression

+0

謝謝。嘗試了兩個NSMakeRange和stringByTrimmingCharactersInSet和兩次我得到一個錯誤: - [__ NSArrayI長度]:無法識別的選擇發送到實例0x4e42c0 – Jeremy 2012-08-02 12:27:36

+0

這意味着你的變量不是一個字符串,它是一個'NSArray'。嘗試打印以記錄'[source objectAtIndex:0]',也許你的圓括號只是數組表示法的一部分,而不是字符串。 – coverback 2012-08-02 12:33:40

+0

謝謝。這有幫助。 – Jeremy 2012-08-02 14:32:43

0

一個更容易之一,如果你知道該字符串總是("開始和結束")

NSString *email = [response substringWithRange:NSMakeRange(2, [response length] - 4)];