list files ignoring the case option
Thanks to Sundar Dorai-Raj, Prof. Ripley and Berton Gunter for the solution. I think I will take Prof. Ripley's suggestion and stick with my initial solution for code readability but I am sure the regexp stuff will come handy next time.
On Thu, 2004-11-04 at 15:10, Prof Brian Ripley wrote:
On Thu, 4 Nov 2004, Adaikalavan Ramasamy wrote:
Sorry if this is a question more on regular expressions. I am dealing with several files which have been badly named. For example the files are given either the extensions txt, TXT or Txt. I wish to select all those files ending with 'txt' ignoring case. Here is how I would do it in bash (Redhat FC2) : touch a1.txt a2.TXT a3.Txt txt.control TXT.control ls -1 | grep -i "txt$" Here is how I am currently doing it in R a <- list.files(all.files=T) grep( "txt$", a, ignore.case=T, value=T )
I'd write that in one line, but it seems as good a way as any.
Is it possible for me to modify the following line to include ignore case option ? a <- list.files( pattern="txt$" )
Not as such.
First, I think you want "\\.txt$" there if you do mean file extensions.
You can use a regexp that ignores case, though, e.g. "\\.[Tt]{Xx][Tt]".
But I would just use your original idea, which is essentially what ls() is
doing internally and is self-documenting.