1. ホーム
  2. iphone

[解決済み] 文字列が数値かどうかを調べる

2023-02-15 13:16:32

質問

文字列が数字のみで構成されているかどうかを調べるにはどうしたらよいでしょうか。文字列から部分文字列を取り出して、それが数値の部分文字列かどうかを確認したいのですが、どうすればよいでしょうか。

NSString *newString = [myString substringWithRange:NSMakeRange(2,3)];

どのように解決するのですか?

文字列を数値として解析しようとする限られた精度に頼らない方法を一つ紹介します。

NSCharacterSet* notDigits = [[NSCharacterSet decimalDigitCharacterSet] invertedSet];
if ([newString rangeOfCharacterFromSet:notDigits].location == NSNotFound)
{
    // newString consists only of the digits 0 through 9
}

参照 +[NSCharacterSet decimalDigitCharacterSet] -[NSString rangeOfCharacterFromSet:] .