mdunnbass has asked for the wisdom of the Perl Monks concerning the following question:
But, what if i want to be able to match any 5 out of the 6 characters in string? i.e., the following would all be desired matches to the pattern:
but none of the following would match:*{1}bcdef a*{1}cdef ab*{1}def abc*{1}ef abcd*{1}f abcde*{1}
abdef*{1} adcbfe ab*{1}cde etc....
How would I set up that as a search pattern, or a regexp? And, of course, the $64,000 twist to the question becomes, if $string is user input, and rather than a strict 5/6 match, the user wants to define the stringency of the match (i.e., allow $n non-matching characters in $string, how could I do that?
I know that I could laboriously go through and search for each of the entries in that first code block above, but I'd prefer to automate this task, and the length of $string may regularly be 10-15 characters long, with up to 5 non-matching characters permitted per search. That becomes a large quantity of different combinations to throw in to the search... Any ideas on how to do it better?
Any and all help would be greatly appreciated,
Matt
|
|---|