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

R语言如何删除字符串中日期之后的末尾内容

R语言截断字符串保留日期片段的实现方案

原始测试变量定义:

a <- "Submitted 28 March, 2022;        originally announced March 2022."

直接用R基础库内置函数就能实现两种目标输出,无需安装第三方扩展包:

  • 输出带Submitted前缀的结果"Submitted 28 March, 2022"
    核心逻辑是截取第一个分号前的所有内容,任选一种写法即可:
    # 正则替换法:匹配第一个分号到字符串末尾的所有内容,替换为空值
    res1 <- sub(";.*", "", a)
    
    # 分隔符切分法:按分号切分字符串,取第一部分内容,fixed=TRUE提升匹配效率
    res1_alt <- strsplit(a, ";", fixed = TRUE)[[1]][1]
    
  • 输出纯日期结果"28 March, 2022"
    通过正则匹配标准日期格式直接提取目标片段,不受前后冗余内容干扰,适配性更强:
    # 匹配「数字日期+英文月份+逗号+四位年份」的标准日期结构
    res2 <- regmatches(a, regexpr("\\d{1,2} [[:alpha:]]+, \\d{4}", a))
    

注意:上述第一种截断方案默认以第一个出现的分号为分割点,正好匹配当前样例中日期结束后紧跟分号的结构,如果后续同类字符串的截断标记位置有变化,对应调整匹配规则即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.01 13:12:28