输出数字给出异常输入字符串的格式不正确

时间:2014-02-28 14:11:32

标签: c#

我有一些正则表达式来转换

中的字符串
RRP ?142 - Now ?113 to just 142

为此,我使用的代码是

private Regex _originalPriceRegex = new Regex(@"[+-]?\d+(?:\.\d*)?");

当程序从下面的函数返回值

时,我收到异常
private string LookForOrignalPrice(HtmlNode node)
{
    string text = node.InnerText;
    Match priceMatch = _originalPriceRegex.Match(text);

    if (priceMatch.Success)
    {
        Console.WriteLine("++++++price is " + priceMatch + "++++++++++++++++++++++++");
        return priceMatch.Groups[1].Value; //Issue arising here
    }
    return null;
}

调用该函数的代码是

{ProductProperties.priceOriginal, new HtmlElementLocator("//td[@class='tdRow1Color']//td[@class='plaintext']//text()[starts-with(., 'RRP')] | descendant::td[@class='tdRow1Color']/descendant::td[contains(text(), '£')] | //span[@style='font-weight:bold;color:White;']",
                customValueHandler: new CustomValueHandler(LookForOrignalPrice))

当函数返回函数的值时,问题似乎正在到来,因为它只返回一个数字是否有办法将函数中的字符串转换为decimal或int来绕过异常。 感谢您提供任何建议

0 个答案:

没有答案