regex - 'if' 语句中的 Perl 正则表达式 [语法]

标签 regex perl syntax

到目前为止,如果我想在一个 if 语句中将几个正则表达式组合在一起,我是这样做的:

my $data =...
if ($data =~ m/regex/ && $data =~ m/secondregex/) {...}
是否有快捷方式(我确定有;它是 Perl!)以避免重复 $data,例如:
if ($data =~ m/regex/ && m/secondregex/) {..}
??

最佳答案

使用默认变量 $_像这样:

$_ = $data;
if ( m/regex/ && m/secondregex/ ) {..}

因为正则表达式作用于 $_默认情况下(就像 Perl 中的许多其他东西一样)。

只需确保您不在 $_ 自动填充的块中,您将需要在此块中稍后使用它。一旦覆盖它就消失了。

关于regex - 'if' 语句中的 Perl 正则表达式 [语法],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5593965/

相关文章:

python - 如果数字之间没有出现句点 [.] 和逗号 [,],则从字符串中删除它们

javascript - 使用 JavaScript 在 HTML 属性周围插入“

java - 帮助更好地解析 Java 中字符串中的数字

javascript - 我可以解释一下这个 javascript 闭包的语法吗?

syntax - 有没有办法在 Kotlin 的数据类中嵌套枚举?

mysql - 正则表达式中的通配符?

perl - 在 Perl 中将 Unix 时间戳转换为可读日期

mysql - 如何在 DBIx::Class 的 SELECT 部分使用子查询?

Python的Perl程序员

php - 当我将我的数字指定为 .000021 时,为什么 PHP 会以科学计数法打印我的数字?