regex - R + 将整数转换为 hh :mm format using regex + gsub

标签 regex r

间隔是 25 小时内 5 分钟间隔的子集

> interval
 [1]   45   50   55  100  105  110  115  120  125  130  135 2035 2040 2045 2050 2055 2100 2105 2110 2115 2120 2125

我想插入 : 以将其放入我可以转换为时间格式的时间格式中

> gsub('^([0-9]{1,2})([0-9]{2})$', '\\1:\\2', interval)
 [1] "45"    "50"    "55"    "1:00"  "1:05"  "1:10"  "1:15"  "1:20"  "1:25"  "1:30"  "1:35"  "20:35" "20:40" "20:45"
[15] "20:50" "20:55" "21:00" "21:05" "21:10" "21:15" "21:20" "21:25"

我的几乎所有示例都使用了它。
我如何获得它以便它适用于数字 "5" ... "45""50""55"

在这里找到这个副本,但这不使用 gsub

最佳答案

一个简单的方法是确保所有输入至少有 4 个字符:

gsub('^([0-9]{1,2})([0-9]{2})$', '\\1:\\2', sprintf('%04d',interval))
# "00:45" "00:50" "00:55" "01:00" "01:05" "01:10" "01:15" "01:20" "01:25"
# "01:30" "01:35" "20:35" "20:40" "20:45" "20:50" "20:55" "21:00" "21:05"
# "21:10" "21:15" "21:20" "21:25"

关于regex - R + 将整数转换为 hh :mm format using regex + gsub,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26267493/

相关文章:

java - 使用 split ("|"按管道符号分割 Java 字符串

通过两个变量滚动加入 Data.Table 而不创建重复项

r - SparklyR 从 Spark 上下文中删除表

javascript - 正则表达式限制星号(*)和数字的长度

mysql - 正则表达式模式相当于 mysql 中的 %word%

r - 列表中最长元素的长度

R,计算两个数据集的最小欧氏距离,并自动标记

r - geom_boxplot,如何根据组专门为异常值着色并保持黑色?

regex - 使用 logback.xml 中的 replace(p){r, t} 转换将 '~' 替换为换行符 ('\n' )

c# - 文本框中的小数值