2016-08-16 31 views
0

我现在的问题是基于我遇到的有关CSV文件的问题,但它也更一般。查找Perl值是否已初始化的命令

我正在寻找使用类似于Java/Groovy/Gosu中的null问号来确定数组索引是否已被初始化。

我有类似:

for (my i = 0; i < @engVals or i < @frenchVals; i++) { 

    $csv->print($file, [ $engVals[i] ?: "", , $frenchVals[i] ?: "" ]); 

    # Where Elvis ops ensure that the array element at i is initialized, and if not stores blank in the CSV 
} 
+1

你想知道是否有[[定义]](http://perldoc.perl.org/functions/defined.html)? –

回答

3

您甲肾上腺素ED的定义操作//如果它被定义返回其左操作数,否则其右操作数

$csv->print($file, [ $engVals[i] // "", $frenchVals[i] // "" ]); 

我不确定为什么你有两个数组元素之间的两个逗号。如果这是一个错字,那么上面的陈述就是你想要的,但是如果你打算在结果CSV数据中应该有一个中间空白字段,那么你应该写, "",

+0

谢谢,对不起中间的昏迷是给了一个额外的空白区域来分隔csv中的两列。 –