2017-02-10 10 views
0

私はサーバーからのHTML文字列を持っています。私はトークンの右側を取得したいと思います。Python RegEx文字列から変数値を検索するための検索

vega.csrfToken = "019387r218r72r696r826r87469786487"; 

私は、特定の正規表現テスターポータル作品に対し

csrfToken = re.search('.*csrfToken[\s="\w]+', text, re.MULTILINE) 

と行全体を一致させるために.*csrfToken[\s="\w]+を使用しています、Pythonはラインを見つけることができません。 行の一致に必要な変更は何ですか?行内のRHSだけを取得する最良の方法は何でしょうか。

+1

を使用して、予想される部分は、この 'Rを試してみてくださいます '* csrfToken \ S = \ S "(\ + W)"'' 。 – Kasramvd

+0

正規表現で引用符をエスケープする必要があるかもしれません。 – Niitaku

+0

そのエラーは正規表現のためではなく、残りのコードに構文エラーがある可能性があります。 – Kasramvd

答えて

1

まず最初にrという接頭辞を正規表現に使用する必要があります。なぜなら、生の文字列として解釈する必要があるからです。第二に、[\s="\w]+の部分は、空白、等号、二重引用符、および長さが1以上の単語文字の組み合わせに一致します。また、期待される部分を得るために、キャプチャグループを使用する必要があります。

だから、あなたは、単に次の正規表現を使用することができます

csrfToken = re.search(r'.*csrfToken\s=\s"(\w+)"', text, re.MULTILINE) 

をそしてcsrfToken.group(1)

関連する問題