是否有像int()
这样的函数可以将字符串转换为浮点值?
我当前正在使用以下代码:
$input=int(substr($line,1,index($line,",")-1));
我需要将
substr
返回的字符串转换为float。
最佳答案
只需使用它。在Perl中,看起来像数字的字符串就是数字。
现在,如果您想在使用之前确定该东西是一个数字,那么Scalar::Util
中有一个实用程序方法可以执行此操作:
use Scalar::Util qw/looks_like_number/;
$input=substr($line,1,index($line,",")-1);
if (looks_like_number($input)) {
$input += 1; # use it as a number!
}
根据您在注释中留下的样本输入,提取数字的更可靠的方法是:
$line =~ /([^\[\],]+)/; # <-- match anything not square brackets or commas
$input = $1; # <-- extract match
关于perl - 如何使用Perl将字符串转换为 float ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2019178/