A regex can only be applied to a string but you don't need to do both convert.toSingle and the regex, Convert.ToSingle will throw an exception if the user enters an invalid value. If you want to avoid the exception then you could read the user input into a String, do the regex check and then Convert.ToSingle.
But I would just do the convert, catch the exception and notify the user in the catch block.
But I would just do the convert, catch the exception and notify the user in the catch block.