我试图从实例“ 3.8 lkjhdf”的字符串中获取小数,如何才能仅获得3.8。这需要动态,因为它可能是“ 333333.8 kljsdf”

if (!double.TryParse(parsedText, out measurment))
{
    string measurmentString = Regex.Match(parsedText, @"\d+").Value;
    if (double.TryParse(parsedText, out measurment))
    {
    }
}
paramaterText3.Add(measurment);

最佳答案

您的正则表达式应为:\d+(\.\d+)?,并且应在第二次measurmentString尝试中使用double.TryParse

if (!double.TryParse(parsedText, out measurment))
{
    string measurmentString = Regex.Match(parsedText, @"\d+(\.\d+)?").Value;
    if (double.TryParse(measurmentString , out measurment))
    {
    }
}

关于c# - 字符串中的C#十进制Tryparse,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37330865/

10-12 06:27