Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex =~m/\F/在Perl中是什么意思?_Regex_Perl - Fatal编程技术网

Regex =~m/\F/在Perl中是什么意思?

Regex =~m/\F/在Perl中是什么意思?,regex,perl,Regex,Perl,我发现=~是一个正则表达式,但我不太明白它在这里做什么。它将第一行赋给$titlecolumn,其中包含一个后跟一个F的 =~是绑定运算符,将正则表达式应用于字符串。该正则表达式通常写为/F/。m前缀可以用来强调,当使用其他分隔符时,以下文字是一个重要的前缀。它将第一行分配给$titlecolumn,该列包含一个后跟一个F的字符 =~是绑定运算符,将正则表达式应用于字符串。该正则表达式通常写为/F/。m前缀可以用来强调,当使用其他分隔符时,以下文字是一个重要的前缀。是,=~是绑定运算符,它将表达

我发现=~是一个正则表达式,但我不太明白它在这里做什么。

它将第一行赋给$titlecolumn,其中包含一个后跟一个F的


=~是绑定运算符,将正则表达式应用于字符串。该正则表达式通常写为/F/。m前缀可以用来强调,当使用其他分隔符时,以下文字是一个重要的前缀。

它将第一行分配给$titlecolumn,该列包含一个后跟一个F的字符

=~是绑定运算符,将正则表达式应用于字符串。该正则表达式通常写为/F/。m前缀可以用来强调,当使用其他分隔符时,以下文字是一个重要的前缀。

是,=~是绑定运算符,它将表达式绑定到模式匹配m//

if语句检查一行是否与给定的正则表达式匹配。在本例中,它检查是否有一个哈希符号后跟大写字母F

刚刚添加的反斜杠可能是为了避免将其视为不需要的注释符号。

是,=~是绑定运算符将表达式绑定到模式匹配m//

if语句检查一行是否与给定的正则表达式匹配。在本例中,它检查是否有一个哈希符号后跟大写字母F

刚刚添加的反斜杠可能是为了避免将其视为不需要的注释符号。

它被称为。它用于将RHS上的图案与LHS上的变量相匹配。同样,你也有!~这否定了匹配

针对您的具体情况:

open DMLOG, "<dmlog.txt" or &error("Can't open log file: $!");
chomp(@entirelog=<DMLOG>);
 close DMLOG;
 for $line (@entirelog) 
{

if ($line =~ m/\#F/)
    {
    $titlecolumn = $line;
    last;
     }
 }
这将测试$line是否与调用它的模式-/F/

匹配。它用于将RHS上的图案与LHS上的变量相匹配。同样,你也有!~这否定了匹配

针对您的具体情况:

open DMLOG, "<dmlog.txt" or &error("Can't open log file: $!");
chomp(@entirelog=<DMLOG>);
 close DMLOG;
 for $line (@entirelog) 
{

if ($line =~ m/\#F/)
    {
    $titlecolumn = $line;
    last;
     }
 }
这将测试$行是否与模式匹配-/F/

您了解正则表达式是什么吗?或者,你是不是被警察甩了

在大多数编程语言中,您会看到如下内容:

$line =~ m/\#F/
然而,在Perl中,正则表达式受Awk语法的启发。因此:

 if ( regexp(line, "/#F/") ) {
   ...
}
=~表示正则表达式将作用于左侧的变量名。如果在$line中找到模式F,则If语句为true

如果您不熟悉它们,可能需要查看。正则表达式非常强大,在Perl中非常常用。事实上,它们往往在Perl中非常常用,这也是其他语言的开发人员声称Perl是一种只写语言的原因之一。

您了解正则表达式是什么吗?或者,你是不是被警察甩了

在大多数编程语言中,您会看到如下内容:

$line =~ m/\#F/
然而,在Perl中,正则表达式受Awk语法的启发。因此:

 if ( regexp(line, "/#F/") ) {
   ...
}
=~表示正则表达式将作用于左侧的变量名。如果在$line中找到模式F,则If语句为true


如果您不熟悉它们,可能需要查看。正则表达式非常强大,在Perl中非常常用。事实上,它们往往在Perl中非常常用,这也是其他语言的开发人员声称Perl是一种只写语言的原因之一。

=~与正则表达式无关。这是一种告诉m//、s//、tr///应该对哪个变量进行操作的方法。\n这里不需要。\因为没有使用x修饰符,所以将以相同的方式处理。@ikegami您的第一条评论应该是+10的答案。正如上面引用的关于绑定运算符的文档所述,=~所做的事情更容易理解。评论真不错+如果可以:=~与正则表达式无关。这是一种告诉m//、s//、tr///应该对哪个变量进行操作的方法。\n这里不需要。\因为没有使用x修饰符,所以将以相同的方式处理。@ikegami您的第一条评论应该是+10的答案。正如上面引用的关于绑定运算符的文档所述,=~所做的事情更容易理解。评论真不错+10.如果我可以: