1

1 つの段落を持つ 1 つの入力ファイルがあります。段落をパターンごとに 2 つのサブ段落に分割する必要があります。

段落.xml

 <Text>
      This is first line.
      This is second line.
      \delemiter\new\one
      This is third line.
      This is fourth line.
 </Text>

R コード:

doc<-xmlTreeParse("paragraph.xml")
top = xmlRoot(doc)
text<-top[[1]]

この段落を 2 つの段落に分割する必要があります。

段落1

 This is first line.
 This is second line.

段落2

  This is third line.
  This is fourth line.

strsplit 関数は非常に便利ですが、複数行のテキストを分割することはありません。

4

2 に答える 2

2

xml ファイルがあるため、XMLパッケージ機能を使用することをお勧めします。私はあなたがここでそれを使い始めているのを見ます.

library(XML)
doc <- xmlParse('paragraph.xml') ## equivalent xmlTreeParse (...,useInternalNodes =TRUE)
## extract the text of the node Text
mytext = xpathSApply(doc,'//Text/text()',xmlValue)
## convert it to a list of lines using scan
lines <- scan(text=mytext,sep='\n',what='character')
## get the delimiter index
delim <- which(lines == "\\delemiter\\new\\one")
## get the 2 paragraphes
p1 <- lines[seq(delim-1)]
p2 <- lines[seq(delim+1,length(lines))]

次に、pasteまたはwriteを使用して、たとえば を使用して段落構造​​を取得できwriteます。

write(p1,"",sep='\n')

This is first line.
This is second line.
于 2013-03-20T06:26:23.153 に答える