更简洁的方法来设置perl6中的正则表达式的默认值
发布时间:2020-12-15 22:04:43 所属栏目:大数据 来源:网络整理
导读:分开例如mins-2成为单位名称和顺序的组成部分,这就是我想要的 sub split-order ( $string ) { my Str $i-s = '1'; $string ~~ / ( -[-d]+ ) ( -?d? ) /; $i-s = "$1" if $1 ne ''; return( "$0",+"$i-s".Int );} 似乎perl6应该能够将其打包成更加简洁的
分开例如mins-2成为单位名称和顺序的组成部分,这就是我想要的
sub split-order ( $string ) { my Str $i-s = '1'; $string ~~ / ( <-[-d]>+ ) ( -?d? ) /; $i-s = "$1" if $1 ne ''; return( "$0",+"$i-s".Int ); } 似乎perl6应该能够将其打包成更加简洁的措辞.我需要默认顺序为1,其中没有尾随数字. 我可能有点懒,不与行结尾匹配$.试图避免返回Nil,因为这对调用者没用. 任何有更好转变的人? 解决方法
如何使用好的旧分裂?
use v6; sub split-order(Str:D $in) { my ($name,$qty) = $in.split(/ '-' || <?before d>/,2); return ($name,+($qty || 1)); } say split-order('mins-2'); # (mins 2) say split-order('foo42'); # (foo 42) say split-order('bar'); # (bar 1) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |