Perl混乱/ ^ $键^

时间:2014-04-23 15:37:52

标签: perl grep

此代码的/ ^ $ key /部分是什么意思?我之前在在线教程中看到过它,但我不知道在哪里,我无法在谷歌上找到它。

if (!grep(/^$key/, @{$ignore})) {

之前的代码

my $ignore = shift;
my ($added, $field, $found, $key, $record, @records, @results, $returned, %superceded,  $value);

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:7)

/^$key/regular expression,又名“正则表达式”或“正则表达式”,是一种旨在匹配模式的迷你语言。

/.../向Perl表明内容是正则表达式。 ^说要查看变量$key的内容,并$key置于变量$key的内容中。所以它询问grep(/^$key/, @{$ignore})的内容是否在字符串的前面。

@$ignore表示返回列表$key中以!开头的所有项目。前面的!grep(/^$key/, @{$ignore})是否定的,因此当@$ignore 包含以$key开头的任何项目时grep为真。

你会在Perl中遇到{{1}}和正则表达式。在这一点上你最好服务by reading a Perl book,而不是试图解开它。我建议Beginning PerlModern Perl(免费在线)或Learning Perl

您还可以从Perl文档中了解正则表达式。虽然Perl文档可能有点密集,但我仍然建议用一本书补充它们。