有没有办法在文件中匹配HTTP POST urlencoded数据(Content-Type:application / x-www-form-urlencoded)?匹配的字符串将仅包含可打印字符和urlencoded字符,如% A-F
和HTTP POST / GET数据中的变量符号&
,当然还包含变量名称和变量内容之间的=
。例如,随机文本包含我需要匹配的数据:
死亡那里欢快的方式嘈杂的功绩。皮鲁德害羞的春天也不是六个 虽然相互生活要求程度。回答dashwood先进 女士最小的处理或。尝试办公室自己改善现在看到。 所谓的人都在县城里引起了她的尊敬。完全是这些 方式似乎没事。 网站= HTTP%3A%2F%2Fwww.test.com%2F&安培;数= 1037319821&安培;注释=测试+ MEA&安培; gender = male的&安培;提交=提交 你在适当的英俊回归投掷是不是。没有 希望他的照片没有暴露的谈话时间。好奇心不断 属于违法所以解释它精致。记得要跟着 你自己的材料再次运输。西边高,我们没有或在 约翰。关于或给出诙谐的事件。或社交材料单身汉 让房东受限制。很忙很容易找到很多忙。所以 精致的我解释的余数。 Dashwood表示安全 我觉得我笑了。 的 ID = 1234&安培;变量=试验&安培;姓名=约翰&安培;姓= Doe的安培; gender = male的&安培;提交=提交
要匹配的数据以粗体显示。试过很多方法,但找不到%[A-F]{2}
&
=
的正则表达式,或者通常匹配它们。
答案 0 :(得分:1)
这应该让你在那里大部分时间。
x = re.compile("([A-Za-z0-9%./]+=[^\s]+)")
out = x.findall(input_str)
# out = ['website=http%3A%2F%2Fwww.test.com%2F&number=1037319821&comment=Test+mea&gender=male&submit=Submit', 'id=1234&variable=test&firstname=John&lastname=Doe&gender=male&submit=Submit']'