用正则表达式吧
double db = 0;
string input = "a123.456abcdef"; //要截取的字符串
Match mc = Regex.Match(input, "\\d+(\\.\\d+){0,1}");
double.TryParse(mc.Groups[0].ToString(), out db);
Console.WriteLine(db);
Regex.match(input, "^[0-9]+");
能描述的再清楚一点吗?比如截取数字有位数限制吗?
可以使用正则 Regex.IsMatch 进行截取