所以我正在为欧洲前 5 名联赛(足球)的球员制作一个数据框。我在这个数据框中有一列名为“PlayerURL”。在本专栏中,我有每个赛季每个球员的网址。他们看起来像这样。
"/en/players/c0617e2b/Dani-Ceballos"
或"/en/players/6c203af0/Yves-Bissouma"
。我有 1003 个类似这样但名称不同的细胞。我想删除最后的“/en/players/”和他们的名字,所以我只将“代码”保留在中间。有人可以帮我做这件事吗?
我是个新手..感谢您的帮助。谢谢:)
使用正则表达式模式和
gsub
或 stringr::str_replace
你可以这样做:
library(dplyr, warn = FALSE)
data.frame(
url = c(
"/en/players/c0617e2b/Dani-Ceballos",
"/en/players/6c203af0/Yves-Bissouma"
)
) |>
mutate(
code = gsub("^/en/players/(.*)/.*$", "\\1", url)
) |>
mutate(
code1 = stringr::str_replace(url, "^/en/players/(.*)/.*$", "\\1")
)
#> url code code1
#> 1 /en/players/c0617e2b/Dani-Ceballos c0617e2b c0617e2b
#> 2 /en/players/6c203af0/Yves-Bissouma 6c203af0 6c203af0