Quiero hacer una función que compruebe una cadena para ver si hay otras cadenas dentro de ellas.
Sin embargo, las subcadenas que se están verificando pueden interrumpirse dentro de la cadena principal por otras letras.Buscar subsecuencias de cadenas dentro de cadenas
Por ejemplo:
a = 'abcde'
b = 'ace'
c = 'acb'
La función en cuestión debe devolver como b
estar en a
, pero no c
.
He intentado set(a)
. intersection (set (b)) ya, y mi problema con eso es que devuelve c
como en a
.
Este tipo de cadenas se denominan [subsecuencias] (http: //en.wikipedia. org/wiki/Subsequence) de la cadena más larga. – Lazer
Esta pregunta es un caso especial de http://stackoverflow.com/questions/6877249/find-the-number-of-occurrences-of-a-subsequence-in-a-string Las soluciones allí son mucho más eficientes para resolver este caso también – Amoss