我有一个废新闻由R类似于下面的提取物名称来源:R和正则表达式:从新闻
> View(mydf$title)
<name of the news> <dash> <source name>
Матч КХЛ перенесен на 2 дня - Газета.Ru
Всероссийская универсиада 2010 - Interfax Russia
Звезда хоккея снялся в клипе популярного рэпера. ВИДЕО - Ura.ru
Трактор – Тролейбус 2:1 14.04.2011 – YouTube
我需要在源的标题新闻和名称拆分mydf$title
( - Газета.ru, - 国际文传电讯俄罗斯 - Ura.ru等)
我试试这个library(stringr)
:
mydf$sourse <- str_extract(mydf$title, '\\- [A-Za-zА-Яа-я0-9." ]{0,}$')
mydf$sourse <- str_extract(mydf$title, "\\-[:space:[:alpha:][:punct:][:space:]]{0,}$")
mydf$sourse <- str_extract(mydf$title, '\\-\\s[A-Za-zА-Яа-я0-9[:punct:]\\s]{0,}')
mydf$sourse <- str_extract(mydf$title, "\\s-\\s[\\w+\\s.]{0,}$")
mydf$sourse <- str_extract(mydf$title, "\\s-\\s[:alpha:][:print:]$")
但不能很好地工作。如何优化分割字符串? 感谢您的提示。 Спасибо。
注:mydf
是data.frame:
> str(mydf)
'data.frame': 100 obs. of 6 variables:
$ title : Factor w/ 100 levels...
$ link : Factor w/ 100 levels...
$ guid.text : Factor w/ 100 levels...
$ guid..attrs: Factor w/ 1 level...
$ pubDate : Factor w/ 100 levels...
$ description: Factor w/ 100 levels...
你能否澄清一下'mydf $ title'的结构?它是一个'character's的向量吗?或者它是一个长'character',它有换行符? –
看看str_split_fixed – hadley
谢谢,下面回答。 – user4212