2011-09-03 108 views

回答

4

沒有任何方法doubleValue沒有返回任何東西。您可以檢查的最小值是0。以下是病例的doubleValue返回0

  1. string不包含有效的數值。
  2. stringnil
  3. string實際上包含@"0"

檢查是否爲有效號碼
使用NSPredicate來測試,如果字符串中包含的數值。

NSString *str = @"sfas"; 
NSString *regx = @"(-){0,1}(([0-9]+)(.)){0,1}([0-9]+)"; 
NSPredicate *test = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regx]; 
BOOL isAValidNumber = [test evaluateWithObject:str]; 
+0

如何檢查字符串是否不包含有效的數值? –

+0

使用NSPredicate測試。更新了答案。 – EmptyStack

+5

如果用戶在','用作小數點分隔符的區域設置中該怎麼辦?使用'NSNumberFormatter'是最好的選擇。 –

相關問題