2016-04-03 18 views
1

私のデータはこの形式です。これはテキストファイルで、クラスは「文字」です。私はファイルから数行を投稿しました。約14000行あります。Rにテキスト行を配置する

"KEY: Aback" 
"SYN: Backwards, rearwards, aft, abaft, astern, behind, back." 
"ANT: Onwards, forwards, ahead, before, afront, beyond, afore." 
"KEY: Abandon" 
"SYN: Leave, forsake, desert, renounce, cease, relinquish," 
"discontinue, castoff, resign, retire, quit, forego, forswear," 
"depart_from, vacate, surrender, abjure, repudiate." 
"ANT: Pursue, prosecute, undertake, seek, court, cherish, favor," 
"protect, claim, maintain, defend, advocate, retain, support, uphold," 
"occupy, haunt, hold, assert, vindicate, keep." 

6行目と7私の闘争は、私は5行目にライン6と7を育てることができる方法であると同様にライン9と10 8.行の継続5. 9行目と10行の続きです行8まで。
感謝の意を伝えるヒント。頭に浮かぶ

+0

ええ、私は何らかのエラーを完全に以前の私の質問を投稿することができませんでした。それは、それが動作するかどうか、いくつかの行で試していた。それが働いたので、完全な質問を再編集しました。ありがとう! – Loy

+1

はい。 [1] [2] ... – Loy

+0

'[:upper:]'おそらく? –

答えて

3

まず最初に(あなたのテキストがxとして保存されている):

x <- paste(x, collapse = " ") 
#prefix each line starter (identifies as pattern: `CAPS:`) with a newline (\n) 
strsplit(gsub("([A-Z]+:)", "\n\\1", x), split = "\n")[[1]][-1] 
# [1] "KEY: Aback "                                          
# [2] "SYN: Backwards, rearwards, aft, abaft, astern, behind, back. "                              
# [3] "ANT: Onwards, forwards, ahead, before, afront, beyond, afore. "                              
# [4] "KEY: Abandon "                                          
# [5] "SYN: Leave, forsake, desert, renounce, cease, relinquish, discontinue, castoff, resign, retire, quit, forego, forswear, depart_from, vacate, surrender, abjure, repudiate. "  
# [6] "ANT: Pursue, prosecute, undertake, seek, court, cherish, favor, protect, claim, maintain, defend, advocate, retain, support, uphold, occupy, haunt, hold, assert, vindicate, keep." 
関連する問題