Chinaunix

标题: 请问用条件操作符如何将带“-”的字符串转换成数组 [打印本页]

作者: black_fire    时间: 2012-03-28 21:36
标题: 请问用条件操作符如何将带“-”的字符串转换成数组
比如 :
如果一个字符串包含“-”, 则将其转为一个范围的数组
$string  =  " 1 - 100"
转换为数组 @array = (1 .. 100)

我用这种方法实现
my $string = "1-100";
my ($start, $end) = $string =~ /(\d+)-(\d+)$/;
my @array = ($start .. $end);


如果在用?: 条件操作符的话应该怎么写呢?
@array =  $string =~/-/  ?  这里的代码怎么实现: $string


谢谢
作者: cecial    时间: 2012-03-28 22:12
@array = $string=~/(\d+)-(\d+)$/ ? $1..$2 : "unkown format";
不知道可行否?
作者: sjdy521    时间: 2012-03-28 22:23
楼上正解。不过感觉字符串转数组与?:没什么直接关系吧
作者: cecial    时间: 2012-03-28 22:34
可能楼主想玩玩啊,呵呵
作者: black_fire    时间: 2012-03-28 22:35
谢谢!
字符串转数组与?:是没有什么直接关系 只是用?:的时候却不会写了
作者: sjdy521    时间: 2012-03-28 22:53
回复 5# black_fire


    不会写的时候可以先写成if else 然后再换成?:就ok了




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2