2015-02-23 21 views
5

Dizenin son sözcüğünden önceki alanı bulmaya çalışıyorum.Normal İfade Son sözcükten önceki boşluğu bulma

Bob Jane 

için Örneğin

, hemen Jane önce boşluk bulmak isterim. Bulmak ve virgül haline getirmek için hepsini değiştirmeye çalışıyorum. Böylece nihai sonuç sadece (Sublime kullanarak) bir metin editörü yapıyorum bu yüzden bir programlama dili kullanılarak değilim

Bob ,Jane 

olurdu. Teşekkür ederim!

cevap

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

Sen , .Sağlıklı demo tarafından this.Replace deneyebilirsiniz.

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

+1

Teşekkürler! İşe yaradı! Ben de başarılı olurum ama hesabımda yeni başladığımdan beri yapamam. – johnny838

1

Ne bul:

(\S+ *)$ 

değiştirme dizesi: Son kelimeden önceki var olan boşluğa sonra virgül eklemek istiyorsanız

,\1 

DEMO

sonra aşağıda deneyin regex.

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

Değiştirme dizesi:

,\1 

DEMO

+1

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

+1

baktığın için teşekkürler. Önceki bir cevabı kabul ettim ama yine de çok teşekkürler! Benden hoşlanırdım ama hesabımı kullanmaya başladığımdan beri yapamam. – johnny838

+1

, kabul edilen yanıttaki normal ifadenin virgül için son boşluğun yerini alacağını unutmayın. https://regex101.com/r/oL9kE8/18 son kelimeden önceki boşluk değil. –