Regex.Match抛出FormatException

时间:2016-04-03 13:48:45

标签: c# regex

我正在使用UDP,现在我正在捕捉从传感器发出的信息。我试图仅从信息发送中提取数字,即温度,光线和运动,并试图用Regex实现这一点。但我得到的格式异常表明:"附加信息:输入字符串的格式不正确"。这是代码:

UdpClient udpClient = new UdpClient(1337);
IPEndPoint endPoint = new IPEndPoint(IPAddress.Any, 0);

while (true)
{
    for (int i = 0; i < 5000; i++)
    {
        Byte[] receive = udpClient.Receive(ref endPoint);
        string receiveDat = Encoding.ASCII.GetString(receive);
        string result = Regex.Match(receiveDat, @"\D+").Value;

        Console.WriteLine(Int32.Parse(result)); 
        Console.ReadLine();
    }
}

1 个答案:

答案 0 :(得分:0)

如果您想要数字而不是非数字,则需要在正则表达式中使用小写\d。资本\D仅匹配非数字。