r - 如何在两个符号之间提取多行文本?

时间:2017-05-16 19:30:27

标签: r

抱歉,我是R的新手,所以这可能是一个基本问题。

假设我有一个如下所示的文本文件:

START1 
<line1>
    <line2>
<line3>
END1

START2
<line4>
    <line5>
<line6>
END2

我想保存两个对象,TEXT1和TEXT2,如下所示:

TEXT1:

<line1>
    <line2>
<line3>

TEXT 2:

<line4>
    <line5>
<line6>

基本上,我想要一个脚本,它将选择两个符号之间的所有行并保留格式。

我尝试使用像这样的gsub:

TEXT1 <- gsub(".*START1 | END1.*", "", x)

但似乎gsub只适用于字符串,而不适用于多行并保持格式。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

Sinnce你说你有一个文件,也许用text = readLines("myfile.txt")读取,然后text将是一个向量。下面的代码过滤了没有开始和结束的行。这个

text[!grepl("(START\\d+|\\s*END\\d+)", text)]