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

如何在R语言中删除点号前的字符串部分?

使用dplyr处理字符串,删除点号前的内容

你可以结合dplyr和stringr(tidyverse生态的字符串处理包)来实现需求,具体步骤如下:

步骤1:加载所需包

library(dplyr)
library(stringr)

步骤2:准备数据并处理

# 原始字符向量
strings = c('AIR:MT.S:R-V:Q', 
            'AIR:MT.T:P-V:Q')

# 转为数据框(适配dplyr的操作逻辑)
df <- tibble(raw_str = strings)

# 处理字符串:删除每个字符串中点号(.)及之前的所有内容
df <- df %>%
  mutate(processed_str = str_remove(raw_str, "^.*\\."))

# 查看处理后的结果
df$processed_str

代码解释

  • str_remove(raw_str, "^.*\\.") 是核心逻辑:
    • ^ 定位到字符串的起始位置
    • .* 匹配任意数量的任意字符(除换行符)
    • \\. 匹配实际的点号(正则中点号是特殊字符,必须用反斜杠转义)
    • 整个正则表达式会匹配从字符串开头到第一个点号的所有内容,str_remove会把这部分内容删除,留下点号之后的部分。

运行后会得到你期望的输出:

[1] "S:R-V:Q" "T:P-V:Q"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 09:57:01