如何在R中删除数据框或字符串中的链接?新人

问题描述 投票:-2回答:2

我想删除数据框的“消息”列中的所有链接。如何删除此类链接。

我还想从文本中删除以http:或https开头的示例。

x<-c("Deneme http://www.blablablabla.com/x2ABf merhaba Osman https://www.blxkxkxlxd.edu OZhann www.slsmsmsbvss.org/xlsEr45?a karalama")
x<-gsub('?(f|ht)(tp)(s?)(://)(((\\w+\\S+|\\W+\\S+)))(*((/)\\w+))',"",x,ignore.case=T)
x
[1] "Deneme  merhaba Osman https://www.blxkxkxlxd.edu OZhann www.slsmsmsbvss.org/xlser45a karalama"

预期输出:

"Deneme merhaba Osman OZhann karalama
r regex gsub
2个回答
0
投票

这将是一个解决方案:

library(tidyverse)

tibble::tibble(URL = c("https:\\example.com",
                       "http:\\www.example.com",
                       "example.net",
                       "example.com",
                       "no_url_1")) %>% 
  dplyr::filter(!stringr::str_detect(URL, "\\.net|http|\\.com"))

0
投票

我想我解决了这个问题。下面的代码有效。经过一些编辑后,下面的建议(所有者删除他的评论时我无法添加他的名字)。注意:代码的顺序很重要。

x<-gsub('?(f|ht)(tp)(s?)(://)(((\\w+\\S+|\\W+\\S+)))((*((/)\\w+))|*(\\w+))',"",x,ignore.case=T)    
x<-sub('.www.*\\.\\w+\\S+','', x)
x<-sub('.ttp.*\\.\\w+\\S+','', x)
© www.soinside.com 2019 - 2024. All rights reserved.