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

如何基于分隔符"/"翻转字符串两侧内容?

基于分隔符"/"翻转字符串两侧内容

输入向量:

st = c( "50/90", "cat/dog,sheep", "08/25,000")

期望输出:

c("90/50", "dog,sheep/cat", "25,000/08" ) 

方法1:使用stringr包的正则替换

借助stringr包的str_replace(),通过正则捕获组快速实现翻转:

library(stringr)
str_replace(st, "(.*)/(.*)", "\\2/\\1")

正则(.*)/(.*)会分别捕获/前后的全部内容,\\2/\\1将两组内容交换位置后拼接。

方法2:Base R原生实现

无需额外包,用strsplit拆分后重组:

sapply(strsplit(st, "/"), function(x) paste(rev(x), collapse = "/"))

strsplit把每个字符串按/拆分为子元素列表,rev翻转每个子列表的元素顺序,最后用paste重新拼接成目标格式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 16:46:29