"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo dividir cadenas por espacios manteniendo las subcadenas entrecomilladas en Python?

¿Cómo dividir cadenas por espacios manteniendo las subcadenas entrecomilladas en Python?

Publicado el 2024-11-08
Navegar:182

How to Split Strings by Spaces While Preserving Quoted Substrings in Python?

Dividir cadenas por espacios mientras se conservan las subcadenas entrecomilladas en Python

Al procesar cadenas que contienen espacios y subcadenas entrecomilladas, puede resultar complicado divida las cadenas con precisión manteniendo la integridad de las secciones citadas. En Python, el módulo shlex proporciona una solución para este escenario específico.

Uso de shlex.split() para conservar comillas

La función shlex.split() le permite para dividir una cadena por espacios mientras se tratan las subcadenas entrecomilladas como una sola unidad. Esto significa que los espacios dentro de las subcadenas entrecomilladas se ignorarán y el texto citado se conservará como un único elemento en la lista resultante.

Ejemplo de uso:

Considere la siguiente cadena:

this is "a test"

Para dividir esta cadena usando shlex.split(), simplemente importe el módulo y use lo siguiente código:

import shlex
result = shlex.split('this is "a test"')

La variable de resultado contendrá la siguiente lista:

['this', 'is', 'a test']

Los espacios dentro de la subcadena citada ("una prueba") se han ignorado y el texto citado se ha conservado como un solo elemento.

Preservando la cita Marcas

Si también desea conservar las comillas dentro de la lista resultante, puede pasar el argumento de palabra clave posix=False a shlex.split().

Por ejemplo:

result = shlex.split('this is "a test"', posix=False)

Esto producirá la siguiente lista:

['this', 'is', '"a test"']

Las comillas ahora se ha conservado como parte de la salida.

En conclusión, la función shlex.split() en Python ofrece una manera conveniente y eficiente de dividir cadenas por espacios mientras se preserva la integridad de las comillas. subcadenas. Al utilizar el argumento de palabra clave posix=False, también puede mantener las comillas dentro de la lista resultante.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3