using System.Text.RegularExpressions;
public static void Main()
"$18.20 to 20.20 per hour",
"18.20 to 20.20 per hour",
"18.20 to $20.20 per hour",
"$18.20 to $20.20 per hour"
foreach (string inputText in inputTexts)
string pattern = @"(?<!\$)\b(\d+\.\d+)\b";
string result = Regex.Replace(inputText, pattern, m => "$" + m.Value);
Console.WriteLine(result);