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

如何移除逗号分隔字符串中带额外符号的相似重复项?

移除逗号分隔字符串中的相似重复项(R语言实现)

解决方案步骤:

  • 拆分并清理字符串:将原始字符串按逗号分割,同时去除每个元素前后的空格
  • 提取核心内容:移除每个元素末尾的特殊标记(如†、*),得到用于判断重复的核心文本
  • 筛选唯一项:基于核心内容去重,保留每组相似项的第一个原始元素
  • 合并结果:将筛选后的元素重新组合为逗号分隔的字符串

完整代码:

# 原始字符串
words <- c("Hello, Hello, At desk (Idle), At desk (Idle)†, On floor (Active), On floor (Active)†, In meeting (Advisors), In meeting (Advisors)*, Day off (Birthday), Day off (Birthday)†")

# 1. 拆分字符串并清理空格
split_words <- strsplit(words, ",")[[1]] |> trimws()

# 2. 提取核心内容(移除末尾的†、*标记)
core_content <- gsub("([†*])$", "", split_words)

# 3. 筛选非重复的项
unique_words <- split_words[!duplicated(core_content)]

# 4. 合并为目标字符串
result <- paste(unique_words, collapse = ", ")

运行后result的输出即为期望结果:
"Hello, At desk (Idle), On floor (Active), In meeting (Advisors), Day off (Birthday)"

扩展说明:

如果需要处理其他末尾特殊标记,只需修改正则表达式中的字符集即可,比如要处理#结尾的项,将gsub的正则改为([†*#])$即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 16:20:30