2013-05-30 49 views
-1

您好我有文件示例如下。使用perl我需要到grep從特點A線 - 特徵BPerl grep模式的開始到END的模式

FeatureA:Y 
Suporrted devices 
: 
: 
: 
:Suported device 
FeatureB:Y 
Suporrted devices 
: 
: 
: 
:Suported device 
FeatureC:Y 
: 
+2

所以你的問題到底是什麼?你試過什麼了?什麼不行? – arkascha

+0

我有功能功能名稱前FeatureA我需要找到設備支持的功能下我試過了@ arg1 = grep(/ $ txt/i,@ arg);它只匹配不是整個列表的功能 – user2310223

回答

3
perl -ne'print if /^FeatureA:/ .. /^FeatureB:/' 

...再說,你可能只需要線高達的FeatureB線,所以

perl -ne'print if (/^FeatureA:/ .. /^FeatureB:/) =~ /^\d+\z/;' 
+0

更新了我的答案。 – ikegami

+0

'/ E0 /'可能更短的正則表達式?和個人問題,你爲什麼更喜歡'\ z'? –

+0

@mpapec,如果您否定它,則只會打印FeatureB行或除FeatureB行之外的所有行。 – ikegami