2015-02-23 14 views
5

Sto cercando di trovare lo spazio prima dell'ultima parola di una stringa.Espressione regolare Ricerca dello spazio prima dell'ultima parola

Ad esempio, per

Bob Jane 

vorrei trovare lo spazio a destra prima di Jane. Sto cercando di fare una ricerca e sostituire tutto per farlo diventare una virgola. Pertanto, il risultato finale sarebbe

Bob ,Jane 

sto solo facendo questo in un editor di testo (utilizzando Sublime) in modo da non sto usando un linguaggio di programmazione. Grazie!

risposta

3
[ ](?=[^ ]+$) 

Si può provare this.Replace da , .Vedi demo.

https://regex101.com/r/oL9kE8/17

+1

Grazie! Ha funzionato! Avrei anche votato per eccesso, ma non posso da quando ho appena iniziato il mio account. – johnny838

1

Trova: stringa

(\S+ *)$ 

sostituzione:

,\1 

DEMO

Se si desidera aggiungere una virgola dopo lo spazio che esiste prima che l'ultima parola quindi provare il seguito regex.

(?<=)(\S+ *)$ 

stringa di sostituzione:

,\1 

DEMO

+1

o '\ s (\ S + \ s *) $' –

+1

Grazie per dare una mano. Ho accettato una risposta precedente, ma grazie mille comunque! Farei l'upvote ma non posso da quando ho iniziato a usare il mio account. – johnny838

+1

nota che la regex nella risposta accettata sostituirà l'ultimo spazio in virgola. https://regex101.com/r/oL9kE8/18 non lo spazio prima dell'ultima parola. –

Problemi correlati