【问题标题】:Remove white space [duplicate]删除空格[重复]
【发布时间】:2017-05-18 16:20:41
【问题描述】:

我正在尝试删除使用以下代码创建的文件名中的空格:

epoch <- strsplit(toString(files[val]),split='.', fixed=TRUE)[[1]][1]
    print(paste(epoch,".csv"))

当前输出给我:"2016_Q3 .csv"。我想删除3. 之间的空格,所以最终的字符串看起来像"2016_Q3.csv"

我查看了gsubtrimws,但无法让它们工作。

【问题讨论】:

    标签: r


    【解决方案1】:

    paste 默认放置一个空格。 而是这样做:

    paste(epoch,".csv",sep="")
    

    paste0(epoch,".csv")
    

    两者都返回:

    [1] "2016_Q3.csv"
    

    【讨论】:

      【解决方案2】:

      我们可以使用sub 匹配一个或多个空格(\\s+)后跟一个点(\\. - 转义点,因为它是暗示任何字符的元字符)并将其替换为.

      sub("\\s+\\.", ".", str1)
      #[1] "2016_Q3.csv"
      

      使用 OP 的示例,即使是非特定 (\\s+) 也应该可以工作

      sub("\\s+", "", str1)
      

      数据

      str1 <- "2016_Q3 .csv"
      

      【讨论】:

        【解决方案3】:

        如果您想使用gsub,这将是一项非常简单的任务。

        str <- "2016_Q3 .csv"
        gsub(" ","",str)
        

        给你:

        "2016_Q3.csv"
        

        【讨论】:

          【解决方案4】:

          使用stringr

          library(stringr)
          epoch = str_replace(epoch, " ", "")
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2016-03-29
            • 1970-01-01
            • 1970-01-01
            • 2012-12-23
            • 2014-11-12
            • 2017-10-27
            • 1970-01-01
            • 2021-05-09
            相关资源
            最近更新 更多