使用gsub添加前导0

时间:2015-12-18 10:23:09

标签: r

我想将前导零添加到字母数字字符串中,总共十个字符。但是,角色之间可能存在空间。

$scope.create = function() {
    var clone = $('#foo').contents().clone();
    $compile(clone)($scope);
    $('#bar').append(clone);
}

此代码添加前导零,但也用零替换字符串中的空白区域。有没有办法只在字符串前添加零?

TestID <- c("1b4 7A1")

gsub(" ","0",sprintf("%010s", TestID))

4 个答案:

答案 0 :(得分:5)

您可以使用包str_pad中的stringr并执行:

str_pad(TestID, width=10, side="left", pad="0")

这给出了:

> str_pad(TestID, width=10, side="left", pad="0")
[1] "0001b4 7A1"

答案 1 :(得分:2)

我们可以使用$Content = Get-content $empFile | select-object -skip 2 $columns = $Content[0].Split($empFileDelimiter)

sub

如果要在前面添加0

sub('^', paste(rep(0,3), collapse=''), TestID)
#[1] "0001b4 7A1"

答案 2 :(得分:2)

可变长度字符串的基本R解决方案可以是

paste0(paste(rep("0", 10 - nchar(TestID)), collapse=''), TestID)
# [1] "0001b4 7A1"

答案 3 :(得分:1)

也可以使用stringi包。

library(stringi)
stri_pad_left(TestID, pad="0", width=10)
# [1] "0001b4 7A1"