2017-01-31 6 views
0

私は、HTMLファイルのどれに見出しのあるエージェントが、その見出しの後ろにある特定のエージェントの名前で見いだそうとしているのか調べようとしています。grep with expression2 AFTER expression1

だから、通常

<h3>Agent</h3> 
<p>Blah blah blah </p> 
<p>Their agent is XYZ Corp.</p> 

のようなものは

を見つけることが必要がありますが、私が検索できますDOSのようなものではので、私は見出しおよびXYZ社のインスタンス間のマークアップやコンテンツ上の任意の規則性を保証しカント'エージェント* XYZ'の意味

-match the string 'Agent' 
-followed by anything 
-followed by the string 'XYZ' 

これをUbuntuのgrepでどのように書きますか? 私は成功せず

grep -lc 'Agent*XYZ' *.html 
grep -lc 'Agent.*?XYZ' *.html 

の両方を試してみました。私は複数のファイルで手動でパターンを見つけることができるので、それが存在することを知っています。 TIA

+0

これは私にはプログラミングの質問のような音はありません。 http://unix.stackexchange.com/を試してください。 – Jolta

答えて

0

はgrepのケースは小文字を区別しない作りと非貪欲?削除:

grep -ilc 'Agent.*XYZ' *.html 
# __^  __^^ 
+0

違いはありません –

+0

@FeargalHogan:答えを編集しましたか、それは今動作しますか? – Toto

+0

はい - いくつか - しかし私はそれを期待していた 'Agent。* XYZ Corp'を見つけられません –