c# Fastest way to get values from string

I have a C# app that receives the following commands, via tcp sockets.

{ key = "foo", value = 1.6557, } 

I’m currently using this method to get the key-value pairs and store them to a classes auto properties.

private Regex _keyRegex = new Regex("\"(.)*\""); private Regex _valueRegex = new Regex(@"\d*\.{1}\d*");  private MyClass CrappyFunction(string nomnom) {   // Gets a match for the key   var key = _keyRegex.Match(nomnom);   // Gets a match for the value   var value = _valueRegex.Match(nomnom);   // Tests if got matches for both. If not, returns null.   if (!key.Success || !value.Success) return null;   // Found both values, so it creates a new MyClass and returns it   // Also removes the " chars from the key    return new MyClass(          key.ToString().Replace("\"", string.Empty),          value.ToString()); } 

Even though it works, I have a really bad feeling looking at this particular piece of code. It’s ugly, in the sense that I’m using two regex objects to achieve my goal. Any suggestions will be appreciated.