int.TryParse为什么转换失败啊,谢谢

图片说明
图片说明

我传过来的就是一个电话号码,11位数字的字符串,但是为什么转换之后是0啊,我试了一下 输入123456就能转换成功,这个还有位数限制吗,谢谢

我刚才试了,10位一下都可以,到11位就不行了。为什么啊

int最大值2147483647,10位,超过这个就出错
用Int64或者正则来判断是否数字

using System.Text.RegularExpressions;

    public static bool IsTelephone(string str_telephone)
    {
        return Regex.IsMatch(str_telephone, @"^(0|86|17951)?(13[0-9]|15[012356789]|17[013678]|18[0-9]|14[57])[0-9]{8}$");
    }

判断是否电话号码使用正则式