R语言如何提取固定子串Xy并拼接至剩余字符串末尾
R语言移动固定子串到字符串末尾的实现方法
你可以通过base R原生函数或stringr包的字符串处理函数完成该需求,以下是可直接运行的代码示例:
步骤1:构造示例数据
# 你的原始字符串向量 str_vec <- c("A11B3XyC4", "A1B14C23XyC16", "B14C23XyC16D3")
实现方案
方案1:base R原生实现(无需安装额外包)
核心使用sub/gsub做子串替换,再用paste0拼接后缀:
# 若每个字符串仅含1个Xy,用sub即可 result <- paste0(sub("Xy", "", str_vec), ". Xy") # 若需移除所有出现的Xy再拼接,改用gsub # result <- paste0(gsub("Xy", "", str_vec), ". Xy")
方案2:stringr包实现(语法更简洁)
# 未安装包先运行 install.packages("stringr") library(stringr) # 实现代码 result <- str_c(str_remove(str_vec, "Xy"), ". Xy") # 也可以用单次正则替换一步完成 # result <- str_replace(str_vec, "(.*)Xy(.*)", "\\1\\2. Xy")
输出验证
运行后打印结果即可得到你需要的格式:
print(result) # 输出内容: # [1] "A11B3C4. Xy" "A1B14C23C16. Xy" "B14C23C16D3. Xy"
内容的提问来源于stack exchange,提问作者xyz
相关产品推荐
相关产品推荐

