cómo puedo obtener una cadena después de una subcadena específica.
Por ejemplo, quiero obtener la cadena después de "mundo"en
my_string="hola mundo python, i'soy un principiante ".
La forma más fácil es probablemente dividir en su palabra objetivo
my_string="hello python world , i'm a beginner "
print my_string.split("world",1)[1]
split toma la palabra (o carácter) a dividir y opcionalmente un límite al número de divisiones.
En este ejemplo se divide en "mundo" y se limita a una sola división.
s1 = "hello python world , i'm a beginner "
s2 = "world"
print s1[s1.index(s2) + len(s2):]
Si quieres tratar el caso en el que s2
no está presente en s1
, entonces utiliza s1.find(s2)
en lugar de index
. Si el valor de retorno de esa llamada es -1
, entonces s2
no está en s1
.
Si quiere hacer esto usando regex, podría simplemente usar un grupo no capturador, para obtener la palabra "mundo" y luego agarrar todo lo que sigue, así
(?:world).*
La cadena de ejemplo se prueba aquí