如何在R语言字符向量中提取两个指定字符串间的内容
提取字符向量中两个标记之间的元素
嘿,这事儿不难,咱们可以通过定位两个标记的索引,然后提取中间的元素来实现。下面是具体的R代码实现:
首先先把你的向量定义好:
FINDINGS <- c("FD_BarrettDetail", "The segment looks flat.", "Prague score C0M3", "It is x cm in length.", "This is an ultra-short segment.", "FD_BarrettDetail1_Benign", "The segment looks flat.", "No nodularity is present.", "It is a long segment.", "Some areas of vascular abnormalities are seen.", "The pit pattern is normal.")
接下来,找到两个分隔标记的位置:
# 找到起始标记的索引,加1跳过标记本身 start_idx <- which(FINDINGS == "FD_BarrettDetail") + 1 # 找到结束标记的索引,减1跳过标记本身 end_idx <- which(FINDINGS == "FD_BarrettDetail1_Benign") - 1
然后提取中间的元素:
result <- FINDINGS[start_idx:end_idx]
运行这段代码后,result就是你要的目标结果啦,输出如下:
[1] "The segment looks flat." "Prague score C0M3" "It is x cm in length." "This is an ultra-short segment."
如果你的向量里可能存在多个相同的标记,那可以用match()函数确保只取第一个匹配的位置,这样更稳妥:
start_idx <- match("FD_BarrettDetail", FINDINGS) + 1 end_idx <- match("FD_BarrettDetail1_Benign", FINDINGS) - 1
内容的提问来源于stack exchange,提问作者Sebastian Zeki
相关产品推荐
相关产品推荐

