@temp = split(/\./, $_);
$val = $temp[1];
$val =~ s/\D//;
Run Code Online (Sandbox Code Playgroud)
在Perl中编写单个语句而不是这三个语句的正确语法是什么?
($val = split(/\./, $_)[1]) =~ s/\D//;
Run Code Online (Sandbox Code Playgroud)
给我
test.pl第126行的语法错误,靠近")["
test.pl的执行因编译错误而中止.
Phi*_*ter 14
这是如何做:
$_="ab123.ab456cd.78";
($val = (split(/\./))[1])=~ s/\D//g;
print $val;
Run Code Online (Sandbox Code Playgroud)
(我冒昧地使用隐含$_的split,并将/g标记添加到,s///因为从前面删除一个非数字没有多大意义.)
现在你知道了,不要这样做.它不清楚,它不会显示你的内涵,而且很可怕.更清楚的是:
$val = (split /\./)[1];
$val =~ s/\D//g;
Run Code Online (Sandbox Code Playgroud)
代码不仅仅是为计算机编写的.它是为人们阅读而编写的,以便以后可以修改它.如果你没有为下一个人(可能在2个月内成为你)编写好的代码,下一个人将有一个可怕的时间搞清楚你做了什么.
列表切片看起来像(LIST)[LIST]; 你省略了这个()部分.
($val = (split(/\./, $_))[1]) =~ s/\D//;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1580 次 |
| 最近记录: |