He revisado este mensaje y ahora que he mejorado el nivel (hace más de 3 años de este post!) pues he hecho esto, por si lo común entre los dos no sabemos cuánto es:
Código PHP:
function loComun(str1,str2) {
var voypor=0;
do {
re=new RegExp( "^"+str1.substring(0,voypor++) );
} while( str2.match( re )!=null )
return str1.substring(0,voypor-2);
}
var str1="lo común entre los dos";
var str2="lo común tienes que hallar";
document.write("comun('"+str1+"','"+str2+"') => '"+loComun(str1,str2)+"'<br/>");
var str1="mira que lámpara más fea";
var str2="mira que lámpara más bonita";
document.write("comun('"+str1+"','"+str2+"') => '"+loComun(str1,str2)+"'<br/>");
var str1="no tengo nada que ver";
var str2="con la cadena que acompaño";
document.write("comun('"+str1+"','"+str2+"') => '"+loComun(str1,str2)+"'<br/>");
Lo que es común tiene que estar al principio de la cadena, pero funciona de perlas. Me podría haber servido entonces, y además no es tan lento.