用R中的空格子集不同长度的字符串

时间:2015-03-20 15:54:32

标签: r string date subset

在R中,我目前有一个长日期和时间矢量保存为字符串。因此,根据给定的日期,字符串可以是16或17或18个字符长,所以我不能只是将字符串中的第一个8或10个字符的子集,因为这不适用于每个日期。但由于日期和时间值之间存在空格,我想知道如何将此字符串子集化,以便我只获取空格前的字符?

为了展示字符串现在的样子,以下是几个例子:

  • “4/18/1950 0:00:00”
  • “6/8/1951 0:00:00”
  • “11/15/1951 0:00:00”

1 个答案:

答案 0 :(得分:1)

我不确定你是否熟悉正则表达式,如果没有,你应该学习,因为它们非常有用: tutorial

正如akrun所指出,你可以使用" sub"命令删除空格及其后的所有内容:

sub(" .*","",stringVar)

  • 第一个参数是正则表达式代码,它匹配空格和后面的所有内容。
  • 第二个参数是您想要替换匹配的内容,在这种情况下没有任何内容
  • 第三个参数是输入字符串

或者,您可以在空格处拆分字符串并使用" strsplit"

选择前半部分

strsplit(stringVar," ")[1]