我试图将数据从Access数据库导入R.我想导入一些主要的CIP代码,这些代码可以包含前导零.RODBC正在将CIP代码转换为数字值,即使它在Access中被定义为文本.任何人都可以阐明我如何在导入时将此字段强制转换为文本字段?
Javascript与具有前导零的值的行为不同.警报(b) - 打印不同的值.
var a = 67116;
var b = 00015;
alert(a);
alert(b);
Run Code Online (Sandbox Code Playgroud)
我更感兴趣的是知道这里通过javascript在alert(b)中应用了什么转换?(如果我用双引号它们.它们工作正常.)
我们的申请可以得到以下数字:
0.1
0.02
0.003
Run Code Online (Sandbox Code Playgroud)
等等
这些价值由我们的代码处理BigDecimal,因为我们用钱操作.
Web UI上有表单,用户应该查看价格的这些浮动部分,转换为以下部分:
1
02
003
Run Code Online (Sandbox Code Playgroud)
问题是,如何削减领先zero和delimiter character投入价格.也许BigDecimal类有标准方法类似trimLeadingZeroes(),但找不到任何.
更新: 修剪前导零和分隔符号
例如:
1 is 0.1
27 is 0.27
Run Code Online (Sandbox Code Playgroud) 我需要在 php 中验证精确的日期格式。
在我的情况下,最佳日期格式应该是:例如1/1/2017(没有前导零)并且代码应该允许我避免日期格式的其余部分。
以下代码是我写的,但没有结果:
if(preg_match("/([1-9]|[1-2][0-9]|3[0-1]-([1-9]|1[0-2])-^[0-9]{4})$/", $date){
// insert into etc. etc....
}else{
// update etc. etc....
}
Run Code Online (Sandbox Code Playgroud)
问题是代码没有正确验证日期;它接受各种日期格式。
我有一个这种字符串列表:
f<-c("CC 982","RX 112","TR 002","FF 1328")
Run Code Online (Sandbox Code Playgroud)
我需要str_pad在数字部分的开头添加一个前导0,就像函数一样,来实现:
"CC 0982" "RX 0112" "TR 0002" "FF 1328"
Run Code Online (Sandbox Code Playgroud)
现在,我试过了 sub
sub('(.{2})(.{1})(.{3})', "\\1\\20\\3", f)
Run Code Online (Sandbox Code Playgroud)
足够接近,但如果数字字符串有4位数,我不希望前导0.这里有什么解决方案?谢谢
我有一个专栏如下.
9453,55489,4588,18892,4457,2339,45489HQ,7833HQ
如果数字小于5位,我想添加前导零.但是,有些数字到底有"HQ",有些没有.(我确实检查了其他帖子,他们在"HQ"部分没有类似的问题)
所以最终期望的输出应该是:
09453,55489,04588,18892,04457,02339,45489HQ,07833HQ
知道如何做到这一点?非常感谢您阅读我的帖子!
我有一个数据框,希望数字变量的长度为四位数字,为了做到这一点,我需要添加 1-3 个前导零,我选择执行此操作的方法是 sprintf 函数,因为数字并不重要转换为字符类。不幸的是结果没有按照我想要的顺序出现
测试数据帧的制作如下,并将前导 0 列添加为第三列,以便于比较。通过运行代码可以看出,粘贴前导零数字的顺序与原始数字顺序不符
test <- as.data.frame(cbind(letters,seq(from=1, to=26)))
test[,3]<-sprintf("%04d", test[,2])
Run Code Online (Sandbox Code Playgroud)
通过将原始数字列分类为字符,按字母顺序重新排列数据帧顺序,sprintf 数字现在按升序排列,尽管数字系列不是。
test.two <- as.data.frame(cbind(letters,seq(from=1, to=26)))
test.two <- test.two[i <-order(as.character(test.two[,2])),]
test.two[,3]<-sprintf("%04d", test.two[,2])
Run Code Online (Sandbox Code Playgroud)
我可以通过弗兰肯斯坦将其组合在一起来创建所需的数据集。
test.three <- as.data.frame(cbind(letters,seq(from=1, to=26)))
test.three[,3]<-test.two[,3]
Run Code Online (Sandbox Code Playgroud)
然而,我想知道我做错了什么,以及什么方法可以给我带来我期望从我认为简单的操作中得到的结果!
在Python中,我有一个两位数或一位数的字符串:
8 5E 9C 52 30 0
在字符串中的每一个数字中,我想向它添加一个前导零(例如转换5为05)并使其成为两位数.
考虑拆分,.split(‘ ‘)并逐个检查并将每个数字转换为两位数:.zfill(2).
所以我的问题是,有没有办法识别字符串中的所有单个数字,并通过插入前导零将它们全部转换为两位数?
删除IP地址中不必要的零:
100.020.003.400 -> 100.20.3.400
001.200.000.004 -> 1.200.0.4
000.002.300.000 -> 0.2.300.0 (optional silly test)
Run Code Online (Sandbox Code Playgroud)
我的尝试在所有情况下都不能很好地运作:
import re
ip = re.sub('[.]0+', '.', ip_with_zeroes)
Run Code Online (Sandbox Code Playgroud)
有类似的问题,但对于其他语言:
请为Python v2和v3提供解决方案.
如何转换如下所示的字符串:
0005.47
Run Code Online (Sandbox Code Playgroud)
到十进制值5.47。
这个值被保留了newStringArray[1]所以我这样做了:Convert.ToDecimal(newStringArray[1])
但结果我得到了这个值: 547
这有什么意义?
leading-zero ×10
r ×4
python ×2
python-2.7 ×2
string ×2
bigdecimal ×1
c# ×1
dataframe ×1
date ×1
decimal ×1
ip-address ×1
java ×1
javascript ×1
php ×1
printf ×1
python-3.x ×1
regex ×1
split ×1
trim ×1
validation ×1