2012-07-21 63 views
9

可能重複:
iPhone how to check that a string is numeric onlyiOS - 如何檢查字符串是否爲數字?

我試圖查找目標C一些基本的功能,但似乎無法找到的基本答案。

我真正需要的是檢查

我會假設有也只是在功能上有些專爲這一點。沒有?

我正在看這個StackOverflow問題How to check if NSString is numeric or not,他們似乎在做非常複雜的事情。

是不是有一些基本檢查我可以在一個簡單的行中做?

謝謝!

+2

定義「數字」!只有數字是允許的?減去?小數點?科學計數法?不同的區域設置?還有什麼...... – 2012-07-21 00:46:51

+0

@NikolaiRuhe是整數4536 – GeekedOut 2012-07-21 00:52:05

回答

37

是不是有一些基本檢查我可以在一個簡單的行中做?

NSScanner *scanner = [NSScanner scannerWithString:testString]; 
BOOL isNumeric = [scanner scanInteger:NULL] && [scanner isAtEnd]; 

如果你想允許scanDouble:十進制數字交換scanInteger:

+0

謝謝:)它的工作。 – GeekedOut 2012-07-21 03:09:47

+0

有沒有像NSDateFormatter這樣的性能損失? – agarcian 2013-10-17 23:33:29

+0

@agarcian不,NSScanner非常輕巧。 – 2014-03-17 08:01:15