提取R中的精确词
我想从一个变量(实际上是url)中提取一些精确的单词,并创建一个只包含提取单词的新变量。检查模式时,我发现我需要字符\\>和,如下所示:提取R中的精确词,r,html-parsing,extract,R,Html Parsing,Extract,我想从一个变量(实际上是url)中提取一些精确的单词,并创建一个只包含提取单词的新变量。检查模式时,我发现我需要字符\\>和,如下所示: > dados$source[1:20] [1] "<a href=\\\"http://twitter.com/download/iphone\\\" rel=\\\"nofollow\\\">Twitter for iPhone</a>" [2] "<a href=\\\"http://twitter.com/
> dados$source[1:20]
[1] "<a href=\\\"http://twitter.com/download/iphone\\\" rel=\\\"nofollow\\\">Twitter for iPhone</a>"
[2] "<a href=\\\"http://twitter.com/download/android\\\" rel=\\\"nofollow\\\">Twitter for Android</a>"
[3] "<a href=\\\"http://twitter.com\\\" rel=\\\"nofollow\\\">Twitter Web Client</a>"
我该怎么做呢?我不确定我是否完全理解您想要提取的模式。然而,使用正则表达式将是一条出路。 问题中的一个例子:
如果您有HTML,请使用像rvest这样的HTML解析器来解析字符串。一旦获得了非HTML字符串,就可以使用正则表达式
library(purrr) # use lapply and sapply if you prefer
library(rvest)
# representative data
links <- c("<a href=\\\"http://twitter.com/download/iphone\\\" rel=\\\"nofollow\\\">Twitter for iPhone</a>",
"<a href=\\\"http://twitter.com/download/android\\\" rel=\\\"nofollow\\\">Twitter for Android</a>",
"<a href=\\\"http://twitter.com\\\" rel=\\\"nofollow\\\">Twitter Web Client</a>")
links %>% map(read_html) %>%
map_chr(html_text) %>%
sub('Twitter (for )?', '', .)
## [1] "iPhone" "Android" "Web Client"
如果链接是上面的数据,比如librarypurr;图书馆服务;链接%>%mapread\u html%>%map\u chrhtml\u文本取决于您试图获取的内容,这还不清楚。dputdados$source[1:20]@alistaire抱歉,我想获取设备,即iPhone、Android、Web客户端等。。。
library(purrr) # use lapply and sapply if you prefer
library(rvest)
# representative data
links <- c("<a href=\\\"http://twitter.com/download/iphone\\\" rel=\\\"nofollow\\\">Twitter for iPhone</a>",
"<a href=\\\"http://twitter.com/download/android\\\" rel=\\\"nofollow\\\">Twitter for Android</a>",
"<a href=\\\"http://twitter.com\\\" rel=\\\"nofollow\\\">Twitter Web Client</a>")
links %>% map(read_html) %>%
map_chr(html_text) %>%
sub('Twitter (for )?', '', .)
## [1] "iPhone" "Android" "Web Client"