在Perl脚本中,是否有可能以某种方式有效地对Perl变量执行grep?一个等效的Perl函数同样可以接受,我只想让解决方案尽可能简单.
例如:
#!/usr/bin/perl
#!/bin/grep
$var="foobar";
$newvar="system('grep -o "foo" $var');
sprintf $newvar;
Run Code Online (Sandbox Code Playgroud)
我希望sprintf $newvar输出的地方foo.
也欢迎任何有关最佳实践的反馈.我对Perl并不是很熟悉.
你可以在Perl中使用正则表达式匹配.无需调用外部"grep"命令.
$var =~ /foo/;
Run Code Online (Sandbox Code Playgroud)
请阅读文档perlrequick,了解如何在变量中搜索模式.同样令人感兴趣的是Perl自己的grep.
$var="foobar";
if ( $var =~ /foo/){
print "found foo\n";
}
Run Code Online (Sandbox Code Playgroud)