Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.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
Perl 如何搜索文本然后打印结果?_Perl_Search - Fatal编程技术网

Perl 如何搜索文本然后打印结果?

Perl 如何搜索文本然后打印结果?,perl,search,Perl,Search,我正在搜索o,然后用o打印所有行。我必须应用的任何建议/代码 data.txt: j,o,b: a,b,d: o,l,e: f,a,r: e,x,o: 期望输出: j,o,b: o,l,e: e,x,o: 这有用吗?我不知道Perl,但是您可以使用上面的grep获得相同的输出。如果您的系统上有grep,那么命令行中的grep o data.txt应该可以完成这个任务 print if /o/; 如果失败,您可以尝试Perl: open IN, 'data.txt'; my @l = <

我正在搜索o,然后用o打印所有行。我必须应用的任何建议/代码

data.txt:

j,o,b:
a,b,d:
o,l,e:
f,a,r:
e,x,o:
期望输出:

j,o,b:
o,l,e:
e,x,o:

这有用吗?我不知道Perl,但是您可以使用上面的grep获得相同的输出。

如果您的系统上有grep,那么命令行中的grep o data.txt应该可以完成这个任务

print if /o/;
如果失败,您可以尝试Perl:

open IN, 'data.txt';
my @l = <IN>;
close IN;
foreach my $l (@l) {
   $l =~ /o/ and print $l;
}
在Perl中:

while (<>) { print if /o/; }

作为一个非常短的一行:

> perl -pe'$_ x=/o/' filename

当你得到分数时,请更新这个问题,这样我们都会感到骄傲或羞愧。
grep 'o' data.txt
grep o data.txt

perl -ne 'print if (/o/);' <data.txt
> perl -pe'$_ x=/o/' filename