我一次又一次地看到StackOverflow上的人们推广使用autodie.但是在这里的代码和网络的其他地方,我并不经常看到autodie.有一些缺点吗?使用autodie时我会丢失什么吗?(我有使用autodie时被宠坏的想法)
perl6/Rakudo是否有相当于perl5 __DATA__或__END__部分的东西?
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js"></script>
<script type="text/javascript">
$( document ).ready( function(){
$( "table > tr > td > input[id]" ).each( function( i, element ){
alert( $( element ).attr( 'id' ) )
});
});
</script>
</head>
<body>
<form>
<table>
<tr><td>City:</td><td><input type="text" id="city" name="city" /></td></tr>
<tr><td>state:</td><td><input type="text" id="state" name="state" /></td></tr>
</table><br />
<input type="submit" value="OK"/>
</form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
当我以这种方式编写它时,它不起作用,因为我的浏览器会自动创建一个<tbody>标记.所以我要写:
$( "table tr > td > input[id]" ).each( function( i, element ){
alert( $( element …Run Code Online (Sandbox Code Playgroud) 这是查找列表中最长元素的最快(执行时间)方式吗?
#!/usr/bin/env perl
use warnings;
use 5.012;
use List::Util qw(reduce);
use List::Util::XS;
my @array = qw( one two three four five six seven eight nine ten eleven );
my $l = reduce{ length($a) > length($b) ? $a : $b } @array;
say $l;
Run Code Online (Sandbox Code Playgroud) 为什么两个打印的数字不同?
#!/usr/bin/env perl
use warnings;
use 5.10.1;
my $sep = '';
my $number = 110110110110111;
$number =~ s/(\d)(?=(?:\d{3})+\b)/$1$sep/g;
say "A: <$number>";
$number =~ s/\Q$sep\E//g;
say "B: <$number>";
Run Code Online (Sandbox Code Playgroud)
输出:
A: <110110110110111>
B: <11111111111>
Run Code Online (Sandbox Code Playgroud) 你更喜欢哪个版本?
#!/usr/bin/env perl
use warnings;
use strict;
use 5.010;
my $p = 7; # 33
my $prompt = ' : ';
my $key = 'very important text';
my $value = 'Hello, World!';
my $length = length $key . $prompt;
$p -= $length;
Run Code Online (Sandbox Code Playgroud)
选项1:
$key = $key . ' ' x $p . $prompt;
Run Code Online (Sandbox Code Playgroud)
选项2:
if ( $p > 0 ) {
$key = $key . ' ' x $p . $prompt;
}
else {
$key = $key . $prompt;
} …Run Code Online (Sandbox Code Playgroud) 有什么像波尔斯这样的bash __DATA__吗?我的意思是该功能,后面的代码__DATA__将不会被执行.
为什么我要带Devel :: Peek :: Dump两个不同的结果?
#!/usr/bin/env perl
use warnings;
use 5.014;
use utf8;
binmode STDOUT, ':encoding(utf-8)';
use Devel::Peek;
my %hash1 = ( 'müller' => 1 );
say Dump $_ for keys %hash1;
my %hash2;
$hash2{'müller'} = 1;
say Dump $_ for keys %hash2;
Run Code Online (Sandbox Code Playgroud)
输出:
SV = PV(0x753270) at 0x76d230
REFCNT = 2
FLAGS = (POK,pPOK,UTF8)
PV = 0x759750 "m\303\274ller"\0 [UTF8 "m\x{fc}ller"]
CUR = 7
LEN = 8
SV = PV(0x753270) at 0x7d75a8
REFCNT = 2
FLAGS = (POK,FAKE,READONLY,pPOK)
PV = …Run Code Online (Sandbox Code Playgroud) 是否存在一个表或类似的东西,它表示当编码为utf8时,不同语言平均需要多少字节来表示可见字符(字形)?