[R] inserting one backslash
Prof Brian Ripley
ripley at stats.ox.ac.uk
Wed Feb 1 19:24:36 CET 2006
On Wed, 1 Feb 2006, RH Koning wrote:
> Hello, I am not very familiar with regular expressions and escaping. I
> need to replace the %-signs in a character vector with elements as
> "income 0%-33%# to be replaced by "income 0\%-33\%" (for later use in
> LaTeX). Using
You are confusing the object and the printed representation: see ?regexp.
> cat(gsub("%","\\\\%","income 0%-33%"), "\n")
income 0\%-33\%
You really do want the object which prints in R "income 0\\%-33\\%".
> gsub("%","\\%","income 0%-33%")
>
> does not give the desired result. However, gsub("%","\\\\%","income
> 0%-33%") gives "income 0\\%-33\\%", one backslash too much. What is the
> appropriate expression to get the desired output (one backslash before
> each %-sign)?
>
> I am using R 2.1.0 on suse linux 9.2.
Time for an undate (not that it affects this, but how objects print has
been changed).
--
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