[英]how can I add a white space within a characther vector in r?
我有一個字符日期序列(“2018-09-032018-09-09”“2018-09-102018-09-16”......),我會在第 10 位數字后添加一個空格。 作為最終結果,我將獲得以下“2018-09-03 2018-09-09”“2018-09-10 2018-09-16”...我想 gsub 功能可以提供幫助,但我不知道如何實施
請你幫助我好嗎 ?
我們可以將str_extract_all
與這個'\\\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])'
用於 YYYY-MM-DD 格式'\\\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])'
正則表達式:
library(stringr)
unlist(str_extract_all(dates, '\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])'))
輸出:
"2018-09-03" "2018-09-09" "2018-09-10" "2018-09-16"
這是否有效:
gsub('(.{10})(.*)','\\1 \\2' ,c("2018-09-032018-09-09", "2018-09-102018-09-16"))
[1] "2018-09-03 2018-09-09" "2018-09-10 2018-09-16"
我們可以使用sub
來捕獲前 10 位數字,然后添加空格
sub("^(.{10})(.*)", "\\1 \\2", dates)
-輸出
[1] "2018-09-03 2018-09-09" "2018-09-10 2018-09-16"
注意:我們使用了sub
,這與我指定了開始 ( ^
) 字符的事實一起是必要的。
dates <- c("2018-09-032018-09-09", "2018-09-102018-09-16")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.