parse_text {svMisc} | R Documentation |
Parse a character string as if it was a command entered at the command line
Description
Parse R instructions provided as a string and return the
expression if it is correct, or an object of class 'try-error' if it is an
incorrect code, or NA
if the (last) instruction is incomplete.
Usage
parse_text(text, firstline = 1, srcfilename = NULL, encoding = "unknown")
parseText(text, firstline = 1, srcfilename = NULL, encoding = "unknown")
Arguments
text |
The character string vector to parse into an R expression. |
firstline |
The index of first line being parsed in the file. If this is
larger than |
srcfilename |
A character string with the name of the source file. |
encoding |
Encoding of 'text“, as in |
Value
Returns an expression with the parsed code or NA
if the last
instruction is correct but incomplete, or an object of class 'try-error' with
the error message if the code is incorrect.
Note
On the contrary to parse()
, parse_text()
recovers from incorrect
code and also detects incomplete code. It is also easier to use in case you
pass a character string to it, because you don't have to name the argument
explicitly (text = ...
).
See Also
Examples
parse_text("1 + 1")
parse_text("1 + 1; log(10)")
parse_text(c("1 + 1", "log(10)"))
# Incomplete instruction
parse_text("log(")
# Incomplete strings
parse_text("text <- \"some string")
parse_text("text <- 'some string")
# Incomplete names (don't write backtick quoted names on several lines!)
# ...but just in case
parse_text("`myvar")
# Incorrect expression
parse_text("log)")