基于大写字母(R)拆分字符串

基于大写字母(R)拆分字符串,r,R,我正在用Vagalume的API提取歌词 library(vagalumeR) library(tibble) library(stringr) set.seed(1234) key = "7a67715b6d0dd6edf7556cc0d176e4ac" musicas = as.tibble(topLyrics(name = "seu-jorge", message = TRUE)) musica = sample(musicas$i

我正在用Vagalume的API提取歌词

library(vagalumeR)
library(tibble)
library(stringr)
set.seed(1234)

key = "7a67715b6d0dd6edf7556cc0d176e4ac"

musicas = as.tibble(topLyrics(name = "seu-jorge",
                          message = TRUE))

musica = sample(musicas$id.top, 1)

letra = lyrics(identifier = musica,
   type = "id",
   artist = "seu-jorge",
   key = key)
然而,
letra
只是一个大的文本块,我想把它分割成更小的文本块

str_split(string = as.character(letra),
     "[[:upper:]]")
这就是我得到的:

[1] "Pretinha"                                 "aço tudo pelo nosso amor"                
[3] "aço tudo pelo bem de nosso bem (meu bem)" " saudade é minha dor"                    
[5] "ue anda arrasando com meu coração"        "ão"                                      
[7] "uvide que um dia"                         "u te darei o céu"                        
[9] "eu amor junto com um anel"                "ra gente se casar"                       
我很确定你们中的大多数人都不懂葡萄牙语,但相信我,它跳过了我用作分隔符的大写字母。如何将大写字母包含到较小的块中?

您要使用:

如果紧随其后的是大写字母,则在“”处拆分

str_split(string = as.character(letra), "(?=[[:upper:]])")