str_extract конкретные шаблоны - PullRequest
0 голосов
/ 10 июня 2018

Я пытаюсь извлечь строки, имеющие одинаковые шаблоны из текста

Трагедия Ромео и Джульетты Уильяма Шекспира

library(readr)

txt <- read_file('http://www.gutenberg.org/cache/epub/1112/pg1112.txt')

Пример текста:

Сцена I. Верона.Общественное место. \ R \ n \ r \ nВведите Сэмпсона и Грегори (с мечами и щитами) из дома \ r \ nof Capulet.
...
Сцена II. \ R \ nA Улица. \ R\ n \ r \ nВведите Капулет, округ Париж и [Слуга] - клоун. \ r \ n \ r \ n \ r \ n Кап.

Я хочу извлечь

Верона.Общественное место.
Улица

Я пробовал с

library(stringr)

str_extract(txt, "Scene\\s[IV]+\\.\\s\\s\\b[A-Z]+\\b")

Не сработало.

Заранее благодарю за совет.

1 Ответ

0 голосов
/ 10 июня 2018
str_extract_all(gsub("(Scene.*?)\r\n","\\1 ",txt),"Scene.*")
[[1]]
 [1] "Scene I. Verona. A public place."                                    
 [2] "Scene II. A Street."                                                 
 [3] "Scene III. Capulet's house."                                         
 [4] "Scene IV. A street."                                                 
 [5] "Scene V. Capulet's house."                                           
 [6] "Scene I. A lane by the wall of Capulet's orchard."                   
 [7] "Scene II. Capulet's orchard."                                        
 [8] "Scene III. Friar Laurence's cell."                                   
 [9] "Scene IV. A street."                                                 
[10] "Scene V. Capulet's orchard."                                         
[11] "Scene VI. Friar Laurence's cell."                                    
[12] "Scene I. A public place."                                            
[13] "Scene II. Capulet's orchard."                                        
[14] "Scene III. Friar Laurence's cell."                                   
[15] "Scene IV. Capulet's house"                                           
[16] "Scene V. Capulet's orchard."                                         
[17] "Scene I. Friar Laurence's cell."                                     
[18] "Scene II. Capulet's house."                                          
[19] "Scene III. Juliet's chamber."                                        
[20] "Scene IV. Capulet's house."                                          
[21] "Scene V. Juliet's chamber."                                          
[22] "Scene I. Mantua. A street."                                          
[23] "Scene II. Verona. Friar Laurence's cell."                            
[24] "Scene III. Verona. A churchyard; in it the monument of the Capulets."
...