Chinaunix
标题:
print lines between 2 strings
[打印本页]
作者:
fzhcl
时间:
2015-04-26 11:58
标题:
print lines between 2 strings
Hi Everyone,
sorry I can't type in Chinese at the moment.
I have a file A like this, and I want to print lines between FFL -- Total FFL,
FileA,
,,,FFK HC,,,
,,,,FFK+300176
,,,,FFK+300177
,,,,FFK+300178
,,,Total FFK ,,
,,,FFL 156 PHOT
,,,,FFL-00000
,,,,FFL+30017
,,,,FFL+30020
,,,,FFL 156 PHO
,,,Total FFL 15
,,,FFA 156 PHOT
,,,,FFA-00000
,,,,FFL+30017
,,,,FFL+30020
,,,,FFA 156 PHO
,,,Total FFA 15
output :
,,,FFL 156 PHOT
,,,,FFL-00000
,,,,FFL+30017
,,,,FFL+30020
,,,,FFL 156 PHO
,,,Total FFL 15
Thanks in advance, appreciate your help.
作者:
rubyish
时间:
2015-04-27 00:20
biru:
while (<DATA>) {
print if /^,,,FFL/ .. /^,,,Total FFL/;
}
__DATA__
,,,FFK HC,,,
,,,,FFK+300176
,,,,FFK+300177
,,,,FFK+300178
,,,Total FFK ,,
,,,FFL 156 PHOT
,,,,FFL-00000
,,,,FFL+30017
,,,,FFL+30020
,,,,FFL 156 PHO
,,,Total FFL 15
,,,FFA 156 PHOT
,,,,FFA-00000
,,,,FFL+30017
,,,,FFL+30020
,,,,FFA 156 PHO
,,,Total FFA 15
复制代码
作者:
fzhcl
时间:
2015-04-30 03:42
本帖最后由 fzhcl 于 2015-04-30 03:46 编辑
回复
2#
rubyish
谢谢。非常好用。
检讨一下,google的时候用的关键词不对,没有找到合适的。一直用(.*)去试。
作者:
sunzhiguolu
时间:
2016-09-21 12:56
perl -0nle 'print $1 while(/^(,+FFL.+?\bTotal\N+)/gms)' f
复制代码
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2