1. A computer-implemented method of finding a best match to a string of characters from multiple string patterns; the method comprising: comparing the string of characters to each of the multiple string patterns to determine which of the multiple string patterns the string of characters matches, wherein the string patterns include wildcard characters so that one or more of the multiple string patterns match the string of characters; based on the comparison, determining a quality of the match between the string of characters and each matching string pattern by computing a metric value that scores the quality of the match; wherein the metric value is computed using substrings of the string of characters, the substrings being separated from one another by a wildcard character; wherein, the metric value for the string of characters is determined by summing a value associated with each of the substrings separated from one another by a wildcard character in the string of characters; selecting from the matching string patterns a matching string pattern as the best match based on the determined quality of the match; and reporting the selected matching string pattern.