Carácter de cadena separada sin función python [duplicado]

Dec 02 2020

¿Puedes separar este "+ 2x-5y + 8 + 2y" (no hay espacios entre caracteres) como [+ 2x, -5y, + 8, + 2y] en Python? ¿Cómo?

Respuestas

schetefan24 Dec 02 2020 at 22:34

si conoce el patrón de la entrada para todos los que podrían entrar, eche un vistazo a las expresiones regulares

En su caso, una solución podría ser algo como

import re
a = "+2x-5y+8+2y"
print(re.findall(r"[+-]\d[xy]?", a))

re.findall(expression, input)requiere una expresión regular y un argumento que se analizará En la solución anterior, el patrón [+-]\d[xy]?consta de

  • [+-] ya sea un símbolo + o un -
  • \dcualquier dígito, si espera utilizar varios dígitos en su \d+lugar (+ significa aquí "al menos una repetición")
  • [xy]?uno de los caracteres xey, pero puede que falte. Si también espera otras letras, agréguelas dentro de estos corchetes