2017-01-22 5 views
0

以下のコードを与えたら、recvuntilに渡されたものについて正規表現をどうやってやりますか?応答は複数行にまたがっているとラインがあなただけの単語を抽出する正規表現を探しているなら我々はCATPython pwntools recvuntil regex

答えて

0

をつかむ

SOME TEXT CAT SOME MORE TEXT 

であれば、テキスト

from pwn import * 

r = remote("localhost", 6666) 
r.recvuntil ('SOME TEXT (.*) SOME MORE TEXT') # This is always the last line 
# Grab the regex'd text 

を繰り返してきたことができますCATSOME TEXT CAT SOME MORE TEXTから、これを使用できます。

SOME TEXT ([^\s]+) SOME MORE TEXT 

SOME TEXTSOME MORE TEXTの間の空白(\s)を除くすべての文字と一致します。ここで


exectuable例です:

var text = "SOME TEXT CAT SOME MORE TEXT"; 
 
var regex = /SOME TEXT ([^\s]+) SOME MORE TEXT/g; 
 
var match = regex.exec(text); 
 

 
while(match !== null) { 
 
    console.log(match[1]); 
 
    match = regex.exec(text); 
 
}

+0

それは月曜日の朝に最初のことだが、それは、JavaScriptのではなく、Pythonのように見えますが、私は同じ原則が適用されることになると思います? – pee2pee

+0

これは、正規表現がどのように機能するかを示すJavaScriptデモンストレーションです。正規表現は、さまざまなプログラミング言語で非常によく似ています。 –

+0

ありがとう - 私はJSの実装について知っていますが、データを受け取る特定の例でPythonを操作する方法が不思議でした。それで、あなたの投稿はちょうどPythonでそれをうまくやる方法を何かクリックしたので、ありがとう! – pee2pee