Tengo la siguiente cadena y estoy tratando de encontrar la mejor práctica para desenterrarla.Uso de decode() frente a regex para deshacer esta cadena
La solución tiene que ser algo flexible ya que recibo esta entrada de una API y no puedo estar absolutamente seguro de que la estructura de caracteres actual (\n
en lugar de \r
) sea siempre la misma.
'"If it ain\'t broke, don\'t fix it." \nWent in for a detailed car wash.\nThe attendants raved-up my engine when taking the car into the tunnel. NOTE: my car is...'
Esta expresión regular parece que debería funcionar:
text_excerpt = re.sub(r'[\s"\\]', ' ', raw_text_excerpt).strip()
he leído aso que decode()
podría funcionar (y habría una solución mejor en general).
raw_text_excerpt.decode('string_unescape')
Probé algo en ese sentido y no funcionó. ¿Alguna sugerencia? ¿Es la expresión regular mejor aquí?
Parece una buena solución. Podrías usar lstrip en lugar de strip, pero es un pequeño detalle. – Wes
Gracias Wes. Supongo que quería mantenerlo genérico con tira, pero probablemente no sea necesario. ¿Alguna idea de cómo podría lograr la misma salida con decodificación en lugar de la expresión regular? – Ben
Parece que no existe un códec como el que intentó utilizar: http://docs.python.org/library/codecs.html#codec-base-classes – Wes