这里我有一个简单的字符串;
input_string <- "P24928 [1909-1922]; [1923-1936]; P08775 [1909-1922]; [1923-1936]"
我希望它在第二组括号之前粘贴第一个部分,即P#####
,这样字符串将是:
"P24928 [1909-1922]; P24928 [1922-1923]; P08775 [1909-1922]; P08775 [1922-1923]"
这里我有一个简单的字符串;
input_string <- "P24928 [1909-1922]; [1923-1936]; P08775 [1909-1922]; [1923-1936]"
我希望它在第二组括号之前粘贴第一个部分,即P#####
,这样字符串将是:
"P24928 [1909-1922]; P24928 [1922-1923]; P08775 [1909-1922]; P08775 [1922-1923]"
library(tidyverse)
input_string <- "P24928 [1909-1922]; [1923-1936]; P08775 [1909-1922]; [1923-1936]"
parts <- input_string |>
str_split_1("\\s") |>
str_remove(";$")
parts |>
matrix(ncol = 3, byrow = TRUE) |>
as.data.frame() |>
mutate(str_c(V1, " ", V2, "; ", V1, " ", V3, "; ")) |>
pull(last_col()) |>
str_flatten() |>
str_remove(";\\s+$")
#> [1] "P24928 [1909-1922]; P24928 [1923-1936]; P08775 [1909-1922]; P08775 [1923-1936]"
创建于2023-12-10年第reprex v2.0.2页