I know you lose some generality with this solution... :%s/.*\(data_\d*\.dat\).*/\1 but it looks a little easier on the eyes. Any cons to doing it this way?
On Wed, 26 Jul 2006, Alan G Isaac wrote: > On Wed, 26 Jul 2006, Xiaoshen Li apparently wrote: > > Thank you very much for all your responses. I am sorry. My file is a > > little different now. It is like following: > > 1 data_34.dat pre= -7872.11914060 post= -7812.80517600 diff= 59.31396460 > > 2 data_5.dat pre= -7986.76147466 post= -7926.94091800 diff= 59.82055666 > > 3 data_16.dat pre= -8117.66357420 post= -8057.25097700 diff= 60.41259720 > > 4 data_36.dat pre= -7628.28979490 post= -7564.08691400 diff= 64.20288090 > > 5 data_18.dat pre= -8145.31860358 post= -8078.61328100 diff= 66.70532258 > > How can I use regular expression to get: > > data_34.dat > > data_5.dat > > data_16.dat > > .. > > This should work: > :[EMAIL PROTECTED](\S\+\)[EMAIL PROTECTED] > > You need to spend some time with > :h :s > :h pattern > :h \( > > hth, > Alan Isaac > > > >