From: Joel VanderWerf Date: 2009-03-14T04:46:13+09:00 Subject: Re: regular expression / gsub question Mmcolli00 Mom wrote: > Hi > Do you know how use a regular expression to get only the scripname from > the each filename below? I have long filename and I want to pull out a > segment "scriptname" only. I have been using a regular expression with > gsub for this. > > filename > > userfilename_scriptname_030109.txt > userfilename3_scriptname1_031109.txt > userfilename_scriptname0_031209.txt > > > The gsub didn't work because the _ on both sides causes me to delete the > whole filename. What would you recommend? > > stripfirstpart = filename.gsub(/*_/,"") > stripsecondpart = filename.gsub(/_.*/,"") I like using #[] for this because it lets you think in terms of what you want to keep rather than what you want to remove. filename[/_(.*?)_/, 1] The ? is there in case there are more underscores later in the filename. -- vjoel : Joel VanderWerf : path berkeley edu : 510 665 3407