小编Bor*_*din的帖子

匹配空格但不匹配换行符

我有时想要匹配空格而不是换行符.

到目前为止,我一直在诉诸[ \t].有一种不那么尴尬的方式吗?

regex perl

258
推荐指数
6
解决办法
13万
查看次数

Internet Explorer的findIndex()方法问题

我正在使用该Selenium::Remote::Driver模块对不同的浏览器进行一些测试.

我想检查一下我的网站列表中是否有一些项目,从框架JavaScript(创建网格)列表.对于这种情况,我必须使用允许的JavaScript代码段Selenium::Remote::Driver.

我写了以下代码

$script = q{

      var paramProgramName = arguments[0];

      var list  = $('#c-list').dxList('instance');
      var items = list.option('items');
      var index = items.findIndex(function(el){ return el.name == paramProgramName; });

      list.selectItem(index);

      return ;
};

$driver->execute_script($script, $programName);
Run Code Online (Sandbox Code Playgroud)

它适用于Chrome和Firefox,但不适用于Internet Explorer,因为该findIndex方法仅受版本12及更高版本支持.出于某种原因,我必须使用版本11.

为了从每个浏览器获取索引,我可以做些什么?

javascript perl unit-testing selenium-webdriver internet-explorer-11

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

<stdin>和<STDIN>有什么区别?

当我<stdin>在Perl module(*.pm)文件中使用时,它不是从键盘读取输入,但是当我<STDIN> 在同一个地方使用时它工作正常.

为什么我使用时没有输入<stdin>

perl perl-module

16
推荐指数
2
解决办法
1190
查看次数

如何让我的Perl脚本为子进程使用多个内核?

我正在研究一种数学模型,该模型使用XFOIL生成的数据,XFOIL是一种流行的航空航天工具,用于查找机翼上的升力和阻力系数.

我有一个Perl脚本,它使用不同的输入参数重复调用XFOIL,以生成我需要的数据.我需要XFOIL运行5,600次,每次运行大约100秒,结束6.5天完成.

我有一台四核机器,但我作为程序员的经验是有限的,我真的只知道如何使用基本的Perl.

我想一次运行四个XFOIL实例,所有实例都在自己的核心上.像这样的东西:

while ( 1 ) {

    for ( i = 1..4 ) {

        if ( ! exists XFOIL_instance(i) ) {

            start_new_XFOIL_instance(i, input_parameter_list);
        }
    }
} 
Run Code Online (Sandbox Code Playgroud)

因此,当我们可以使用新的输入参数列表启动新实例时,程序正在检查(或最好是休眠)直到XFOIL实例空闲.

perl multicore

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

Perl XML :: LibXML:findnode vs. findvalue vs. find - 有什么区别?

我正在使用XML::LibXML,我只需要计算XPath表达式指定的节点数.

使用下面前两个代码行中的任何一个产生我正在寻找的东西.我可以使用或不使用countXPath函数(是的,我知道,因为它返回一个列表).findvaluefindfindnodes

my $node_cnt = $dom->findvalue("count($xpath_str)");  # WORKS!
my $node_cnt = $dom->find("count($xpath_str)");       # WORKS!
my @node_cnt = $dom->findnodes("count($xpath_str)");  # count doesn't work!
Run Code Online (Sandbox Code Playgroud)

这引出了一个普遍的唠叨问题:这三种find类型有什么区别?在文档中,它说:

$string = $node->findvalue($xpath)
$result = $node->find($xpath)
@nodes  = $node->findnodes($xpath_expression)
Run Code Online (Sandbox Code Playgroud)
  1. 论证$xpath_expression$xpath文档之间是否真的存在差异?

  2. 对于返回标量的两个人来说,有什么区别?

我试图理解使用一种查找类型的重要性 - 谢谢!

perl xpath libxml2

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

Bash读取输出?

我在Ubuntu 11.4的终端上运行它.

假设我执行了一个bash脚本,输出是:

Test1: Some text...
Test2: Some text...
Test3: Some text...
Run Code Online (Sandbox Code Playgroud)

在同一个bash脚本中,我如何将上面的输出存储为一个或多个变量?

理想的解决方案是准备好在条件中使用,如下所示:(输出的第一行将存储在$ln1等等中)

if [ $ln1 = "Test1: Some text..." ] ; then
Run Code Online (Sandbox Code Playgroud)

linux bash terminal ubuntu

12
推荐指数
1
解决办法
4万
查看次数

转换POSIX-> WIN路径,在Cygwin Python中,无需调用cygpath

我使用Python脚本,在Python的Cygwin构建中运行,以创建发布到本机Windows实用程序的命令(不支持Cygwin).这需要在发出命令之前将路径参数从POSIX转换为WIN形式.

调用cygpath实用程序是最好的方法,因为它使用Cygwin来做它在那里做的事情,但它也有点可怕(而且很慢).

我已经在运行Python的Cygwin构建 - 所以存在进行转换的代码.似乎应该有一个Cygwin/Python特定的扩展,直接在Python中为我提供了这个功能的钩子,而不必启动一个全新的过程.

python cygwin

12
推荐指数
2
解决办法
3435
查看次数

Perl类方法和对象方法

在学习其他语言时,类方法和对象方法之间通常存在差异.

我知道,在Perl中,班级很弱.类方法和对象方法之间是否也有区别?

我知道最常用的类方法可能是类的new方法.在Perl中,我可以使用包名称调用所有方法,但不能调用包的对象.这是为什么?

perl class object

12
推荐指数
2
解决办法
3288
查看次数

无论有没有删除,都可以保留一个有福的哈希成员

我在某些来源中看到了这行代码

( $self->{arg} ) = ( ( delete $self->{arg} ) =~ /(.*)/s ) if ${^TAINT}; 
Run Code Online (Sandbox Code Playgroud)

我理解无意义.我也知道删除

我的问题是,在什么情况下使用它是必要的或者是优选的delete,并且使用更简单的东西是不够的

( $self->{arg} ) = ( ( $self->{arg} ) =~ /(.*)/s ) if ${^TAINT};
Run Code Online (Sandbox Code Playgroud)

例如

#!/usr/bin/env perl -T

use 5.014;
use warnings;

package Some {
    use Moose;
    has 'arg' => (is => 'rw', isa => 'Str');
    sub doit {
        my $self = shift;
        #( $self->{arg} ) = ( ( delete $self->{arg} ) =~ /(.*)/s ) if ${^TAINT};
        ( $self->{arg} ) = …
Run Code Online (Sandbox Code Playgroud)

perl hash taint

12
推荐指数
1
解决办法
165
查看次数

如何在后台运行Perl系统命令?

#!/usr/bin/env perl
use warnings; use strict;
use 5.012;
use IPC::System::Simple qw(system);

system( 'xterm', '-geometry', '80x25-5-5', '-bg', 'green', '&' );

say "Hello";
say "World";
Run Code Online (Sandbox Code Playgroud)

我试过这个在后台运行xterm-command,但它不起作用:

没有找到shell的绝对路径:&

什么是使它运作的正确方法?

perl background system

11
推荐指数
3
解决办法
5万
查看次数