You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R语言字符向量中拼接特定模式字符串与前序字符串?

解决R语言字符串拼接问题

先看你的原始字符向量:

vec <- c(
  'red yellow orange', 'green white', 'blue', 'orange purple', 'green brown', 'red'
)

要实现把单独的blue和red拼接到它们的前一个字符串前,可以按以下步骤操作:

  • 定义需要处理的目标关键词:
targets <- c("blue", "red")
  • 定位这些关键词在向量中的位置(仅匹配完全一致的独立元素):
target_positions <- which(vec %in% targets)
  • 遍历目标位置,将关键词拼接到前一个元素的前方:
for (pos in target_positions) {
  if (pos > 1) {  # 规避第一个元素无前置项的越界问题
    vec[pos - 1] <- paste(vec[pos], vec[pos - 1], sep = " ")
  }
}
  • 查看最终处理结果:
vec

运行后输出结果:

[1] "red yellow orange" "blue green white"  "blue"              "orange purple"     "red green brown"   "red"

这个方法精准定位到独立的目标关键词,仅修改对应前置元素,完全匹配你的需求。

内容的提问来源于stack exchange,提问作者Noah_Seagull

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 08:45:36