Quindi ho espressioni come "./folder/thisisa.test/file.cxx.h" Come faccio a sostituire/rimuovere tutto il "." ma l'ultimo punto?Regex di Python che corrisponde a tutto ma l'ultima occorrenza
9
A
risposta
13
per abbinare tutti, ma l'ultimo punto con una regex:
'\.(?=[^.]*\.)'
Utilizzando un lookahead per controllare che non v'è un altro punto dopo quello che abbiamo trovato (il lookahead non fa parte del match).
+1
Grazie per l'aiuto – landocalrissian
Quello che ho messo è più veloce. Beh, non vedrai la differenza però. – Loamhoof
è probabilmente più veloce utilizzare un ciclo per sostituirli tutti, tenere traccia dell'indice dell'ultima sostituzione e sostituirlo con un punto l'ultimo dopo il ciclo. – didierc
Se stai manipolando i nomi dei percorsi, dai un'occhiata a 'os.path' – Felipe