小编Pit*_*Pit的帖子

如果满足条件,则向数组添加值

我正在构建一组数组哈希

my @array = (
    {label => 'first hash'},
    {label => 'second hash',
     innerarray => [
        {label => 'first inner hash'},
        {label => 'second inner hash'},
      ]
    },
);
Run Code Online (Sandbox Code Playgroud)

有没有办法只在条件满了时才添加第二个内部哈希?像这样的东西:

my @array = (
    {label => 'first hash'},
    {label => 'second hash',
     innerarray => [
        {label => 'first inner hash'},
        {label => 'second inner hash'} if 1==1,
      ]
    },
);
Run Code Online (Sandbox Code Playgroud)

我尝试使用push重写代码:

my @innerarray = ();
push @innerarray, {label => 'first inner hash'};
push @innerarray, {label => 'second inner hash'} if …
Run Code Online (Sandbox Code Playgroud)

arrays perl if-statement perl-data-structures

6
推荐指数
2
解决办法
3474
查看次数

如何在html表中分隔两个tr

是否有可能tr在HTML表格中的两行()之间有一个可视分隔符.

我尝试过<br>但这不是有效的代码.

我尝试tr在休息后添加填充顶部,但它不起作用.

目前我使用空行:

<tr><td colspan=\"X\">&nbsp;</td></tr>
Run Code Online (Sandbox Code Playgroud)

但我不认为这是最好的解决方案,特别是因为我必须确保colspan如果有变化就调整列数.

有什么方法可以解决这个问题吗?

html html-table

5
推荐指数
1
解决办法
2万
查看次数

如何匹配两个值,而不依赖于它们在字符串中的相应位置

我正在寻找同时匹配两个值的最佳方法.

我想获得一个真正的价值,如果这两个值是一个字符串,但我不知道他们会以什么顺序字符串中(例如,abcdefbedfa在情况下,我想匹配ab)

是否有更好的解决方案(特别是如果以后我需要更复杂的值来匹配),而不是:

$string =~ m/(a.*b)|(b.*a)/i
Run Code Online (Sandbox Code Playgroud)

regex perl

3
推荐指数
2
解决办法
1607
查看次数

当有正则表达式匹配时,未初始化的eq警告

uninitialized value in string eq at *** line xxx在我的代码中收到一个警告,如果确实存在eq该行,那将很容易解决.

但是hashref中的值有一个正则表达式匹配.

if ($hashref->{parameters}->{type} =~ m/:/) {
Run Code Online (Sandbox Code Playgroud)

在此之前的一些行我甚至有这个:

$hashref->{parameters} = defined($hashref->{parameters}) ? $hashref->{parameters} : '';
$hashref->{parameters}->{type} = defined($hashref->{parameters}->{type}) ? $hashref->{parameters}->{type} : '';
Run Code Online (Sandbox Code Playgroud)

所以该值至少应该初始化.

我问自己和你:为什么我仍然得到关于价值未初始化的警告,而且为什么它会说eq而不是pattern match

编辑:

parameters苏巴斯包含通过URL输入(后和/或获取)中给出的所有variabels.该type值是那些变量之一可能是在URL中.如果type值是否在url 中并不重要,如果它包含值,我总是会收到uninitialized value in string eq警告.即使我通过在有缺陷的线之前警告它来控制线的类型值.

2.编辑: 正如@ikegami认为确实有一个elsif引起警告

整个if - elsif语句看起来有点像:

if ($hashref->{parameters}->{type} =~ m/:/) {
    …
elsif ($hashref->{parameters}->{type} eq $somevalue) {
    …
}
Run Code Online (Sandbox Code Playgroud)

,这是$somevalue这是未初始化.

regex perl mod-perl

3
推荐指数
1
解决办法
148
查看次数

如果没有找到结果,则Jquery each()回退

我正在尝试在表单提交上创建一个JSON对象以传递给Perl.我有几个嵌套的divs和uls li允许jQuery-ui可排序的排序.

为了能够保存已排序的lis(遍布几个divs),我编写了以下代码:

jQuery("form[name='editorview']").submit(function(event) {
    event.preventDefault();
    var values = '{ ';
    jQuery(this).find(".div_abcd").each(function(){
        values += '"'+this.id+'": [';
        jQuery(this).find("div[id^='CONT']").each(function(){
            values += '{"'+this.id+'": [';
            jQuery(this).find("li").each(function(){
                if (jQuery(this).not("class='placeholder'")){
                    values += '"'+this.id+'",';
                } else {
                    values +='"placeholder",';
                }
            });
            values = values.slice(0, -1); //removing trailing ,
            values +=']},';
        });
        values = values.slice(0, -1); //removing trailing ,
        values += '],';
    });
    values = values.slice(0, -1); //removing trailing ,
    values += '}';
    jQuery("#order").val(values);
    document.editorview.submit();
});
Run Code Online (Sandbox Code Playgroud)

div班级最多4 秒, …

jquery

2
推荐指数
1
解决办法
3315
查看次数

Perl'-s'文件测试运算符问题

我正在调试一段代码,它使用Perl'-s'函数来获取某些文件的大小.

my $File1 = /myfolder/.../mysubfolder1/document.pdf
my $File2 = /myfolder/.../mysubfolder2/document.pdf
my $File3 = /myfolder/.../mysubfolder1/document2.pdf($File3实际上是/myfolder/.../mysubfolder2/document.pdfaka 的链接$File2)

有缺陷的代码是:

my $size = int((-s $File)/1024);

哪里$File被替换为$File1- $File3.

由于某些原因,我无法解释这不适用于每个文件.

为了$File1$File3它的作品,但不适合$File2.我能理解,如果都$File2$File3不会工作,这将意味着该文件/myfolder/.../mysubfolder2/document.pdf是某种损坏.我甚至在确定文件存在if (-e $File)|{之前添加了一个测试-s,但这三个文件确实存在.

还有一个更奇怪的事情:有一个.htaccess/myfolder/.../mysubfolder1/,但没有.htaccess/myfolder/.../mysubfolder2/.如果它是反向的,我会认为.htaccess-s以某种方式阻止呼叫.

有什么想法吗?

perl file

-1
推荐指数
3
解决办法
2590
查看次数