Why do you think this is a bug in R? You have not told us what you expected, but the character range |-| contains only | . Not agreeing with your expectations (unstated or otherwise) is not a bug in R.
\- is the same as -, and - is special in character classes. (If it is first or last it is treated literally.) And | is not a metacharacter inside a character class. Also, > grep("[d\\-c]", c("a-a","b")) [1] 1 2 > grep("[d\\-c]", c("a-a","b"), perl=TRUE) [1] 1 shows that escaping - works only in perl (which you will find from the background references mentioned, e.g. The interpretation of an ordinary character preceded by a backslash ('\') is undefined. .) This is all carefully documented in ?regexp, e.g. Patterns are described here as they would be printed by 'cat': do remember that backslashes need to be doubled in entering R character strings from the keyboard. This is not the first time you have wasted our resources with false bug reports, so please show more respect for the R developers' time. You were also explicitly asked not to report on obselete versions of R. On Wed, 3 Jan 2007, [EMAIL PROTECTED] wrote: > Full_Name: FAN > Version: 2.4.0 > OS: Windows > Submission from: (NULL) (159.50.101.9) > > > These are expected: > >> grep("[\-|c]", c("a-a","b")) > [1] 1 > >> gsub("[\-|c]", "&", c("a-a","b")) > [1] "a&a" "b" > > but these are strange: > >> grep("[d|\-|c]", c("a-a","b")) > integer(0) > >> gsub("[d|\-|c]", "&", c("a-a","b")) > [1] "a-a" "b" > > Thanks > > ______________________________________________ > R-devel@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel > -- Brian D. Ripley, [EMAIL PROTECTED] 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 ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel