Questions tagged «perl»

Perl是一种过程性,高级,通用,动态编程语言,以其对正则表达式和字符串解析功能的本机支持而闻名。通常,请使用此标签来回答有关Perl的问题。对于与新的(但相关的)语言Raku(以前称为“ Perl 6”)有关的内容,请使用raku标记。对于其他语言的Perl样式正则表达式,请使用regex标记;如果基于PCRE库,则使用pcre标记。

29
如何获取已安装的CPAN模块的列表?
除了尝试 perldoc <module name> 单独为需要花哨的CPAN模块或浏览文件系统并查看目录的CPAN模块我不知道我们安装了哪些模块。 获得安装的每个CPAN模块的大列表的最简单方法是什么?从命令行或其他方式。
88 perl  cpan 


14
如何有效计算运行标准偏差?
我有一组数字列表,例如: [0] (0.01, 0.01, 0.02, 0.04, 0.03) [1] (0.00, 0.02, 0.02, 0.03, 0.02) [2] (0.01, 0.02, 0.02, 0.03, 0.02) ... [n] (0.01, 0.00, 0.01, 0.05, 0.03) 我想做的是有效地计算所有数组元素在列表的每个索引处的均值和标准差。 为了表示平均值,我一直在遍历数组并求和给定列表索引处的值。最后,我将“平均值列表”中的每个值除以n(我正在处理总体,而不是总体中的样本)。 要进行标准偏差,现在我已经计算出平均值,因此我再次遍历。 我想避免两次遍历数组,一次是平均值,然后一次是SD(在得到平均值之后)。 是否有一种有效的方法来计算两个值,而只需要遍历数组一次?任何使用解释语言(例如Perl或Python)或伪代码的代码都可以。

6
使用“ use utf8;” 给我“打印中的宽字符”
如果我运行以下Perl程序: perl -e 'use utf8; print "鸡\n";' 我收到此警告: Wide character in print at -e line 1. 如果我运行此Perl程序: perl -e 'print "鸡\n";' 我没有得到警告。 我认为use utf8必须在Perl脚本中使用UTF-8字符。为什么这不起作用,我该如何解决?我正在使用Perl 5.16.2。如果这是在文件中而不是在命令行中使用一个衬板,我也会遇到同样的问题。
86 perl  unicode  utf-8 

5
Perl构建,单元测试,代码覆盖:完整的工作示例
我发现的有关Perl构建过程,单元测试和代码覆盖率的大多数Stackoverflow答案只是将我引向CPAN那里的文档。指向CPAN模块绝对没有错,因为应该将完整的文档保存在这里。不过,在很多情况下,我都找不到完整的工作代码示例。 我一直在Internet上搜索可以下载或粘贴到我的IDE中的实际工作代码示例,例如典型的教程“ Hello World”示例源代码,但是该示例演示了使用单元测试和代码进行构建的过程覆盖率分析。有人有一个完整的工作项目的小例子来演示这些技术和过程吗? (我确实有一个小的工作示例,我将用它回答我自己的问题,但是可能还有其他SO用户拥有比我想出的示例更好的示例。)

9
如何在Perl中将字符串转换为数字?
我有一个包含十进制值的字符串,我需要将该字符串转换为浮点变量。因此,我拥有的字符串的示例为“ 5.45”,我想要一个等效的浮点数,因此可以向其添加.1。我已经在互联网上进行搜索,但是只看到如何将字符串转换为整数。

1
使用Perl执行Python脚本时,为什么没有语法错误?
我刚刚在中编写了一些测试python代码test.py,并按如下方式启动它: perl test.py 一段时间后,我意识到自己的错误。我之所以说“一段时间”,是因为Python代码实际上已正确执行,就像在Python解释器中一样! 为什么我的Perl解释我的Python?test.py看起来像这样: #!/usr/bin/python ...Python code here... 有趣的是,如果我做相反的事情(即call python something.pl),则会遇到很多语法错误。
85 python  perl 

4
嵌套捕获组在正则表达式中如何编号?
对于正则表达式应如何处理嵌套括号的捕获行为,是否存在已定义的行为?更具体地说,您是否可以合理地期望不同的引擎将在第一个位置捕获外部括号,并在随后的位置捕获嵌套的括号? 考虑以下PHP代码(使用PCRE正则表达式) <?php $test_string = 'I want to test sub patterns'; preg_match('{(I (want) (to) test) sub (patterns)}', $test_string, $matches); print_r($matches); ?> Array ( [0] => I want to test sub patterns //entire pattern [1] => I want to test //entire outer parenthesis [2] => want //first inner [3] => to …

1
“现代”正则表达式的识别能力
真正的现代正则表达式实际上可以识别哪种语言? 每当有一个带有后向引用(例如(.*)_\1)的无限长度捕获组时,正则表达式现在就会与非常规语言匹配。但是,仅凭它本身还不足以匹配类似的东西S ::= '(' S ')' | ε-匹配配对对的上下文无关语言。 递归正则表达式(对我来说是新的,但我确信Perl和PCRE中存在)可以识别至少大多数CFL。 有没有人做过或读过这方面的研究?这些“现代”正则表达式的局限性是什么?他们对LL或LR语法的认识比CFG严格多还是少?还是存在两种可以被正则表达式识别但CFG不能识别的语言,而相反呢? 与相关论文的链接将不胜感激。


14
如何确定Perl中变量是否具有数值?
Perl中是否有一种简单的方法可以让我确定给定变量是否为数字?类似于以下内容: if (is_number($x)) { ... } 将是理想的。-w使用开关时不会发出警告的技术无疑是首选。
83 perl  numbers 


4
Nginx变量类似于Apache中的SetEnv?
我在Apache中使用SetEnv在虚拟主机中设置一些变量,这些变量在PHP中使用进行恢复$_SERVER[the_variable]。 现在,我切换到Perl Catalyst和Nginx,但是Nginx中的“ env”指令似乎并不相同。这没用。如何实现? 这是背景图片,以防万一有人可以提出更好的方法,或者我以前的系统无法在Nginx上使用。 我在多个域中使用相同的应用程序。所有数据都来自具有相同结构的不同数据库。 数据库名称在该环境变量中被硬编码到虚拟主机。 据我所知,数据库的名称,所有查询都从第一个查询转到其相应的数据库。 我可以有多个使用同一数据库的域,只是将相同的变量包含在指令中。
82 apache  perl  nginx  catalyst 

2
Perl中的<<'m'=〜m >>语法是什么意思?
因此,我知道perl的语法很不正常,但是前一天在工作中遇到了一个代码片段,这让我感到困惑。有人可以向我解释这是什么意思: &lt;&lt;'m'=~m&gt;&gt; print $a unless $b; return; m ; 它看起来像HEREDOC语法,但没有任何我见过的形式。
82 perl 


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.