Great problem, it could also be used to figure out what portions of a web page change so an bot could rip out stories from news sites. I suggest thinking of this along the lines of a diff. First determine you record delimiter. In a diff the delimiter is a new line. However with regular expressions you might go with white space (or this could be a command line option). Look up diff and use a similar algorithm. Once you find the components that are different look at the differences. Would they both fit in the same character class. Maybe just go down the following list to see which describes both first.
/^[0-9]$/
/^[0-9]+$/
/^[0-9]*$/
/^[0-9A-Za-z]$/
/^[0-9A-Za-z]+$/
/^[0-9A-Za-z]*$/
/^[0-9A-Za-z.,]$/
/^[0-9A-Za-z.,]+$/
/^[0-9A-Za-z.,]*$/
/^.$/
/^.+$/
#Giving up
/^.*$/
This might be good for a first pass.
----
I always wanted to be somebody... I guess I should have been more specific.