[R] separate commands by semicolon
Adrian Dușa
dusa.adrian at unibuc.ro
Sat Sep 17 17:28:06 CEST 2016
There is one minor problem with parse(): if any of the individual commands
has an error, the entire text will be parsed in a single error.
For example, in a normal R console:
> print(2); ls(
[1] 2
+
So first print(2) is executed, and only after the console expects the user
to continue the command from ls(
Parsing the same text:
> parse(text = "print(2); ls(")
Error in parse(text = "print(2); ls(") :
<text>:2:0: unexpected end of input
1: print(2); ls(
^
What I would need is something to separate the two commands, irrespective
of their syntactical correctness:
[1] "print(2)" "ls("
I hope this explains the situation,
Adrian
On Thu, Sep 15, 2016 at 11:02 PM, Adrian Dușa <dusa.adrian at unibuc.ro> wrote:
> On Thu, Sep 15, 2016 at 10:28 PM, William Dunlap <wdunlap at tibco.com>
> wrote:
>
>> The most reliable way to split such lines is with parse(text=x).
>> Regular expressions don't do well with context-free grammars.
>>
>
> Oh, that's right of course.
> > as.character(parse(text = x))
> [1] "foo <- \"3;4\"" "bar <- \"don't ; use semicolons\""
>
> That was simple enough, thanks very much,
> Adrian
>
> --
> Adrian Dusa
> University of Bucharest
> Romanian Social Data Archive
> Soseaua Panduri nr.90
> 050663 Bucharest sector 5
> Romania
>
--
Adrian Dusa
University of Bucharest
Romanian Social Data Archive
Soseaua Panduri nr.90
050663 Bucharest sector 5
Romania
[[alternative HTML version deleted]]
More information about the R-help
mailing list