[R] list files ignoring the case option
Prof Brian Ripley
ripley at stats.ox.ac.uk
Thu Nov 4 16:10:37 CET 2004
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.
--
Brian D. Ripley, ripley at stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-help
mailing list