问题标签 [strawberry-perl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
140 浏览

regex - 为什么字符串不匹配?

我有一个写字板文件,从中提取两个字符串并进行比较。在这种情况下,它们都是相等的,但我不能使用=~表达式来评估它们。

我在调试模式下尝试过的内容:

  1. 两个字符串相等,由eq
  2. 两个字符串相等,由==
  3. 手动将另一个变量设置为相同的字符串,然后if使用新变量执行语句;if($pin_list =~ /$x/){do something}. 这次尝试是成功的。
  4. 对两个字符串变量执行chomp(var)了几次,然后运行代码。失败的
  5. $tst_pins =~ s/\n//g删除了两个 var 上的回车。失败的
  6. 两个变量的长度相同。
  7. 手动打印两个 var 并目视验证两个字符串是相同的。

有人有什么想法吗?我怀疑这与写字板有关,也可能与隐藏字符有关,但不知道如何追踪它。


tchrist -> 好问题。在这种情况下,字符串是相等的,但情况并非总是如此。在正常情况下,我只是在寻找一个字符串作为另一个字符串的子集。


对于那些可能感兴趣的人。问题解决了。

我有一个字符串,我用“+”“加入”。所以字符串如下所示:

“1+2+3+4+a+b+等”

'+' 最终成为问题。在一位同事的建议下,我执行了一个 substr 并将其中一个字符串削减到违规点。它发生在它捕获'+'之后。然后我使用空格而不是“+”加入,一切正常。

使用除字母表之外的不同字符会产生影响,我仍然无法解释为什么当其他所有内容都说它是平等的时候。

布雷特

0 投票
1 回答
349 浏览

perl - Perl 的哪个部分不喜欢 NTFS 连接?

我喜欢 Vista 风格的路径,所以在 XP 机器上我创建了 NTFS 连接C:\Users->C:\Documents and Settings~\Documents-> ~\My Documents,所以我只需要编写一种风格的 path C:\Users\me\Documents

但是,CPAN::SQLite当我设置PERL5LIB'C:\Users\me\Documents\dev\perl\lib'. 继承自的出口商Exporter模块开始抱怨export_to_level当他们尝试使用它时未定义。

我真的认为它是Exporter等人,CPAN::SQLite只是一个受害者,因为它在use 语句中导入$dbh符号,只是让 perl 抱怨$dbh没有定义。除此之外,与 XS 相关的模块抱怨没有“引导”方法。

那么有人知道 Perl (Strawberry) 是否对 NTFS Junctions 有特殊问题吗?

0 投票
2 回答
981 浏览

perl - 在 Cygwin 下的 Strawberry Perl 环境中运行 CPAN shell 时缺少“cpan>”提示

在 Cygwin 下的 Strawberry Perl 环境中运行 CPAN shell 时遇到了一个奇怪的提示问题。

使用启动 CPAN 时,perl -MCPAN -eshell我得到以下输出:

请不要缺少标准cpan>提示。为什么会这样,我该如何解决?

键入时quit\n我得到提示,但我发出命令后:

0 投票
3 回答
3038 浏览

database - 使用 Perl 访问 BerkeleyDB 的正确方法是什么?

我在使用 BerkeleyDB 时遇到了一些问题。我有多个相同代码的实例指向一个数据库文件存储库,一切正常运行 5-32 小时,然后突然出现死锁。命令提示在执行 db_get 或 db_put 或游标创建调用之前停止。所以我只是要求以正确的方式处理这些电话。这是我的总体布局:

这是创建环境和数据库的方式:

此代码的单个实例运行,转到一个站点并保存 URL 以供另一个实例解析(我设置了标志,以便每个数据库在锁定时都被锁定):

它会定期检查是否有一定数量的项目处于未排序状态:

在将任何元素添加到任何数据库之前,它首先检查所有数据库以查看该元素是否已经存在:

下一个代码紧随其后,它的许多实例并行运行。首先,它获取未排序的下一项(没有忙碌值“1”),然后将值设置为忙碌“1”,然后对其进行处理,然后将数据库条目完全移动到另一个数据库(它是从未排序中删除并存储在另一个数据库中):

在其他任何地方,如果我在任何数据库上调用 db_put 或 db_del,它都会被这样的锁包裹:

但是,我的 db_get 命令是自由浮动的,没有锁定,因为我认为阅读不需要锁定。

我已经查看了这个代码一百万次,算法是无懈可击的。所以我只是想知道我是否正在实施这个错误的任何部分,使用错误的锁等等。或者是否有更好的方法来防止使用 BerkeleyDB 和 Strawberry Perl 发生死锁(甚至诊断死锁)?

更新:更具体地说,问题发生在 Windows 2003 服务器上(1.5 GB RAM,不确定这是否重要)。我可以在我的 Windows 7 机器(4GB RAM)上运行整个设置。我还开始使用以下命令打印出锁定统计信息:

将此标志添加到环境创建中:

然后每 60 秒调用一次:

状态始终返回为 0,即成功。这是最后的统计报告:

我对此持谨慎态度:

这些死锁是如何发生的,又是如何解决的?(代码的所有部分仍在运行)。在这种情况下,究竟什么是死锁?

0 投票
2 回答
5418 浏览

perl - 如何在 Strawberry Perl 中更改 @INC?

@INC在 Strawberry Perl 中,如何在不更改脚本的情况下永久更改?

我知道-I,但不想每次都调用该开关。

0 投票
1 回答
1643 浏览

perl - Strawberry Perl - Net::Server 测试在安装期间挂起

安装 Net::Server 时,测试挂在 4/5 上,安装会阻塞,直到我发送中断信号。我试过谷歌搜索,但找不到任何相关的东西。

我在 Windows XP 上使用草莓 Perl 5.12.2

安装输出:

0 投票
2 回答
2244 浏览

perl - 如何在不擦除 \perl\site\lib\ 和 \perl\site\bin\ 的情况下升级草莓 perl?

我下载了 5.12.3 安装程序来升级我的 5.12.1 安装。安装 5.12.3 后,我之前安装的 cpan 模块不见了。这是预期的行为吗?我应该在升级之前备份我的库以防止这种情况吗?

0 投票
3 回答
5299 浏览

windows - 突然之间,perl 脚本不起作用,除非我在它们前面加上“perl”并给出脚本的完整路径

我一直在使用我自己的个人环境,该环境已经持续工作了 20 多年。大约 14 年前,我开始合并许多 perl 脚本。22 年来,我一直在使用相同的命令行解释器树(NDOS->4DOS->4NT->TCMD,实际上都是同一个程序)。

我刚从 ActiveState windows perl 切换到 Strawberry Perl。

多年来,这就是我运行 perl 脚本所需的全部内容:

这是您指定使用什么程序打开内容的方式。

我可以简单地做到这一点:

事情刚刚奏效。永远。

今天,在一个使用一周的操作系统中,一切都停止了工作。

Perl 脚本会运行,但它们不会做任何事情。没有错误。没有输出。没有什么。

它工作的唯一方法是如果我在脚本前加上“perl”(在这种情况下,我的路径不会被搜索,因为脚本名称现在是一个参数,所以我不得不填写脚本的完整路径)

这就是成为我的感觉:

请注意,这在昨天运行良好,甚至在今天早些时候。我不知道是什么改变了它,又是什么破坏了它,而且我已经看了很长时间,发现了类似但不相同的问题 - 并且没有任何修复有帮助。

我有一大堆脚本。我真的很讨厌必须在每个人之前插入世界“perl”,然后限定完整路径!

实际上,我可能必须编写一个 perl.bat 包装器,将参数文件名转换为完全限定的路径,并显式调用 perl。

我真的不想那样做。这是一个禁止援助的解决方案。我想了解什么是错误的,地址是,并解决它。

我开始讨厌Windows 7...

0 投票
4 回答
34174 浏览

perl - 如何安装模块?草莓 Perl 问题

我正在尝试在 Windows 7 上的 Strawberry Perl 中安装 Perl 模块。

我正在运行以下命令,并收到大量我不明白的消息。看起来我收到了 500 个错误,好像该页面无法访问。但是,当我在浏览器中指向镜像时,访问 FTP 目录没有问题。我在 Linux 上几乎没有 Perl 经验,在 Windows 上也没有。我尝试手动将镜像添加到 urllist,但我认为这没有帮助。

0 投票
4 回答
89697 浏览

windows - 使用 Strawberry Perl 安装模块

到目前为止,我使用ActiveStateActivePerl,并使用 ppm 来安装模块。

上周我搬到了Strawberry Perl,但我不知道应该如何使用 Strawberry Perl 安装模块。有哪些关于如何使用 Strawberry Perl 完成模块安装的信息,或者是否有一些关于如何安装新模块的链接?