在R语言中解码URL字符串向量

5
假设你有一个包含URL编码字符字符串的原子向量。
例如:
urlencoded<-c("im%20looking%20for%20uncle","im%20looking%20for%20sister") 

有没有办法对向量中的每个元素进行解码,返回一个具有相同长度且包含常规文本的向量?
换句话说,输出应该是:
c("im looking for uncle","im looking for sister")

在基本的R中,URL解码不���向量化,并且速度较慢。虽然在R之外有很多工具可以快速解码URL编码的字符字符串,但我找不到任何好的R实用程序。

2个回答

3
您可以使用 sapply 将函数应用于向量。它将返回结果向量:
> urlencoded <- c("im%20looking%20for%20uncle", "im%20looking%20for%20sister")
> sapply(urlencoded, URLdecode, USE.NAMES = FALSE)
[1] "im looking for uncle"  "im looking for sister"

2

对于还不知道的人,有一个名为urltools的包,其中包含向量化的url_decodeurl_encode

library(urltools)

urlencoded <- c("im%20looking%20for%20uncle","im%20looking%20for%20sister")
url_decode(urlencoded)
# [1] "im looking for uncle"  "im looking for sister"

url_encode(c("im looking for uncle", "im looking for sister"))
# [1] "im%20looking%20for%20uncle"  "im%20looking%20for%20sister"

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接