如何在R数据框中提取匹配指定域名的URL并生成新列
R 空格分隔URL多域名提取方案
核心实现逻辑
利用正则匹配不含空格的连续字符段中包含指定域名的部分,直接提取完整URL,使用stringr包的str_extract函数实现,代码简洁易维护。
实现代码
1. 依赖加载
# 未安装包先执行:install.packages("stringr") library(stringr)
2. 字段提取
# 提取linkedin域名URL存入新列 df$linkedin <- str_extract(df$urls, "[^ ]*linkedin\\.com[^ ]*") # 提取medium域名URL存入新列 df$medium <- str_extract(df$urls, "[^ ]*medium\\.com[^ ]*")
扩展适配
如果单条urls字段内存在多个同域名URL,可改用str_extract_all批量提取后拼接:
# 多个同域名URL用逗号拼接存入字段 df$linkedin <- sapply(str_extract_all(df$urls, "[^ ]*linkedin\\.com[^ ]*"), paste, collapse = ",")
内容的提问来源于stack exchange,提问作者Florian Grüning
相关产品推荐
相关产品推荐

