R: Simple variable interpolation in texts

qq {GetoptLong} | R Documentation

## Simple variable interpolation in texts

### Description

Simple variable interpolation in texts

### Usage

    qq(text, envir = parent.frame(), code.pattern = NULL, collapse = TRUE)

### Arguments

`text` | text string in which variables are marked with certain rules
`envir` | environment where to look for variables. By default it is the environment where `qq` is envoked. It can also be a list in which element names are the variable names to be interpolated.
`code.pattern` | pattern of marks for the variables. By default it is `@\\{CODE\\}` which means you can write your variable as `@{variable}`. This value can be a vector that all patterns are searched.
`collapse` | If variables return vector of length larger than one, whether collapse into one string or return a vector

### Details

I like variable interpolation in Perl. But in R, if you want to concatenate plain text and variables, you need to use functions such as `paste`. However, if there are so many variables, quotes, braces in the string you want to construct, it would be painful.

This function allows you to construct strings as in Perl style. Variables are marked in the text with certain rule. `qq` will look up these variables in user's environment and replace the variable marks with their real values.

For more explaination of this function, please refer to vignette.

### Author(s)

Zuguang Gu <z.gu@dkfz.de>

### Examples

    a = 1
    b = "text"
    qq("a = @{a}, b = '@{b}'")

    a = 1:2
    qq("a = @{a}, b = '@{b}'")
    qq("a = @{a}, b = '@{b}'", collapse = FALSE)

    a = 1
    qq("a = `a`, b = '`b`'", code.pattern = "`CODE`")

[Package GetoptLong version 0.1.7 Index]