从所有元素中提取所有.com,.in,.co.in

时间:2015-12-11 19:09:32

标签: r stringr

我在csv中有数据,其中包含以下列

ARTICLE_URL
http://twitter.com/aviryadsh/statuses/528219883872337920
http://www.ibtimes.co.in/2014

我想在此列旁边创建另一个列,我只能使用twitter.com, team-bhp.com, ibtimes.co.in,broadbandforum.co这样的网址。

我试过了

text$ne=str_extract(Brand$ARTICLE_URL, '\\w+(.com)')

但是这只给出了以.com结尾的url如何获取所有其他的。

1 个答案:

答案 0 :(得分:0)

在这种情况下,我建议使用字符串替换而不是字符串提取。它可以用字符串提取,但正则表达式有点混乱,不像两步字符串替换方法那样可读。以下是我的表现:

urls <- c("http://twitter.com/aviryadsh/statuses/528219883872337920", "http://www.ibtimes.co.in/2014", "https://www.ibtimes.co.in/2014")
tmp <- stringr::str_replace_all(urls, "https?://|www.", "")
domains <- stringr::str_replace_all(tmp, "/.*", "")

然后查看我们的输出:

domains
# [1] "twitter.com"   "ibtimes.co.in" "ibtimes.co.in"