我有一个字符串,其中包含一个十进制值,我需要将该字符串转换为浮点变量。因此,我有一个字符串的例子是"5.45“,我想要一个浮点等效值,这样我就可以向它添加.1。我在互联网上搜索过,但我只看到如何将字符串转换为整数。
发布于 2008-11-14 00:43:29
你根本不需要对它进行转换:
% perl -e 'print "5.45" + 0.1;'
5.55
发布于 2011-12-17 03:18:03
这是一个简单的解决方案:
示例1
my $var1 = "123abc";
print $var1 + 0;
结果
123
示例2
my $var2 = "abc123";
print $var2 + 0;
结果
0
发布于 2008-11-14 03:06:58
Perl是一种基于上下文的语言。它不会根据你给它的数据来做它的工作。相反,它会根据您使用的运算符和使用这些运算符的上下文来确定如何处理数据。如果你做数字排序的事情,你会得到数字:
# numeric addition with strings:
my $sum = '5.45' + '0.01'; # 5.46
如果你做字符串排序的事情,你会得到字符串:
# string replication with numbers:
my $string = ( 45/2 ) x 4; # "22.522.522.522.5"
Perl主要知道要做什么,而且大部分都是正确的。另一种说法是Perl更关心动词而不是名词。
你是否正在尝试做一些事情,但它不起作用?
https://stackoverflow.com/questions/288900
复制相似问题