10

Web ページに 2 つのフレーズが同時に表示されるようにする正規表現を探しています。

私がウェブ上で確認する必要がある 2 つのフレーズはCurrent QPS (last 10s, ignored 0)Average Latency (last 100 queries)

Web ページは次のようになります (クエリ時間は異なりますが、テキストは変わりません)。

Query Statistics

Average QPS 25.3673   
Average Latency 0.1002   
Average Latency (last 100 queries) 0.0834   # Match this one, ignore output-0,0834
Average Search Latency 0.0555   
Average Docsum Latency 0.0330   
Sampling period 3133524.9570   
Current QPS (last 10s, ignored 0) 24.8000  # Also match this one, ignore output 24.8000 
Peak QPS 170.9000   
Number of requests 79717858   
Number of queries 79489080 

Web サイトの各フレーズを一致させることはできますが、2 つのフレーズを一緒にすることはできません。ツールが 2 つのフレーズの間のコンテンツを無視するようにするにはどうすればよいですか?

PSここではどの言語でもプログラミングしていません。正規表現は、正規表現を受け入れるツールに入れられます。

4

4 に答える 4

9

それらがその順序で表示されると確信できる場合、仮にあったとしても、これは機能するはずです:

(<query 1>).*(<query 2>)

例えば

(Average Latency \(last \d+ queries\)).*(Current QPS \(last \d+s, ignored \d+\))

.演算子がツールの改行と一致することを確認する必要がある場合があります。

于 2012-06-12T14:26:15.570 に答える
1

私の最初の提案は、正規表現に2つのパターンを、表示されると予想される順序で単純に追加することです

/($regex1.*?$regex2|$regex2.*?$regex1)/
于 2012-06-12T14:26:56.227 に答える
0

使用しているツール、特に複数行の処理方法に依存する場合があります。

これを試すことができます:

Average Latency \(last \d+ queries\)\s(.*\s)*Current QPS \(last \d+s, ignored \d+\)\s
于 2012-06-12T14:27:33.893 に答える
0

これはうまくいくはずです

(?im)^(Average\s+Latency\s+\(last\s+100\s+queries\)|Current\s+QPS\s+\(last\s+10s,\s+ignored\s+0\)).+
于 2012-06-12T14:31:14.960 に答える