gpt4 book ai didi

r - 使用gsub提取R中空格之前的字符串

转载 作者:行者123 更新时间:2023-12-03 06:42:49 27 4
gpt4 key购买 nike

我有一个生日列表,如下所示:

dob <- c("9/9/43 12:00 AM/PM", "9/17/88 12:00 AM/PM", "11/21/48 12:00 AM/PM")

我只想从此变量中获取日历日期(即删除第一次出现空格后的所有内容)。

这是我迄今为止尝试过的:

dob.abridged <- substring(dob,1,8)
dob
[1] "9/9/43 1" "9/17/88 " "11/21/48"
dob.abridged <- gsub(" $","", dob.abridged, perl=T)
> dob.abridged
[1] "9/9/43 1" "9/17/88" "11/21/48"

所以我的代码适用于长度为 6 或 7 的日历日期,但不适用于长度为 8 的日历日期。是否有关于与 gsub 一起使用的更有效的正则表达式的指针,可以处理长度为 6、7 或 8 的日历日期?

谢谢。

最佳答案

不需要 substring ,只需使用 gsub :

gsub( " .*$", "", dob )
# [1] "9/9/43" "9/17/88" "11/21/48"

一个空格 (),然后是任何字符 (.) 任意次数 (*),直到字符串末尾 ($)。请参阅?regex学习正则表达式。

关于r - 使用gsub提取R中空格之前的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15895050/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com