Ho il seguente regolare sostituzione di espressione:utilizzare espressioni regolari per sostituire sottopattern sovrapposte
input=re.sub(r"([a-zA-Z0-9])\s+([a-zA-Z0-9])" , r"\1*\2" , input)
Io uso l'espressione regolare sulla stringa "3 a 5 b"
.
Torno "3*a 5*b"
.
Sto pensando che dovrei tornare "3*a*5*b"
.
Quindi in qualche modo le mie sostituzioni di espressioni regolari interferiscono l'una con l'altra.
Cosa posso fare per ottenere il risultato desiderato, a parte le esecuzioni iterative dell'espressione regolare?
input = re.sub ("", "*", input) - questo ti fa diventare quello che vuoi – PurityLake
No, @PurityLake, non è così. Ciò produrrebbe rimpiazzi errati nella stringa '" 3/a 5! B "' – Richard
scusa ho agito solo sull'informazione che mi è stata data, ho solo pensato che volevi sostituire gli spazi con il carattere "*" – PurityLake