2013-04-21 45 views
1

我想覈對設置一個字符的字符串的後綴,但我得到的錯誤:目標C檢查字符串後綴設置

if ([string hasSuffix:[NSCharacterSet characterSetWithCharactersInString:@"(+-*/"]) 

我在做什麼錯的,是有一個正確的替代?

+0

你得到什麼錯誤?你的代碼缺少一個右括號,這是我發現的唯一錯誤 – Raj 2013-04-23 10:49:02

回答

7

-[NSString hasSuffix:]NSString作爲參數,而不是NSCharacterSet。您最好的選擇可能是-[NSString rangeOfCharacterFromSet:options:]NSBackwardsSearch作爲選項,並檢查位置是否在字符串的末尾。

你想做什麼?

+0

我只會使用三個OR語句,似乎更容易 – Amendale 2013-04-21 01:29:35

0

我認爲你正在試圖查看你的字符串的第一個字母是否是該集合中的一個字符。如果是這樣,那麼使用這個:

NSCharacterSet *set = [NSCharacterSet characterSetWithCharactersInString:@"(+-*/"]; 
if ([[string substringToIndex:1] rangeOfCharacterFromSet:set].location != NSNotFound) 
    // String starts with one of the characters from the character set