python中&符号、字母字符和等号的正则表达式

Posted

技术标签:

【中文标题】python中&符号、字母字符和等号的正则表达式【英文标题】:Regex for ampersand, alphabetic characters and equal sign in python 【发布时间】:2015-10-29 22:31:50 【问题描述】:

我正在寻找一个正则表达式,它可以让我在字符串中找到类似 &dog=&entropy= 的东西,我尝试了类似的东西

&+s*^[a-zA-Z]+s*=

相信我可以将我想要的东西与s* 分开,但效果并不好,我们将不胜感激。谢谢!

【问题讨论】:

这是您要解析的网址吗? 是的,但我不能使用 Python 特定的库,这必须像我上面描述的那样通过正则表达式来完成。我也没有得到完整的 url,只有其中的一部分。 【参考方案1】:

我要去一个窗台上假设

from urllib import urlparse
urlparse.parse_qs(my_query_string)
#or 
urlparse.urlparse(my_url_string)[3]

是你真正想要的

【讨论】:

感谢您的建议,但我必须使用正则表达式来执行此操作,因为我给出的某些字符串只是 url 的一部分,这不能是项目约束的 Python 特定库。不过谢谢。【参考方案2】:

如果你想使用正则表达式,你可以使用这样的东西:

&\w+=

Working demo

代码

import re
p = re.compile(ur'&\w+=')
test_str = u"asdfasdf&asdf=asdfffff&abc123=asdf\n\n\n"

re.findall(p, test_str)

如果你想捕捉价值,你可以像这样使用捕捉组:

&(\w+)=

【讨论】:

酷,这正是我想要的。谢谢!

以上是关于python中&符号、字母字符和等号的正则表达式的主要内容,如果未能解决你的问题,请参考以下文章

如何在 python 中替换正则表达式?

正则表达式判断字符串中包含数字、大写字符、小写字母、特殊符号中的几种怎么判断?

python正则表达式

强烈推荐!Python 这个宝藏库 re 正则匹配

正则表达式判断字符串中包含数字,大写字符,小写字母,特殊符号中的几种怎么判断?

使用 Python 和正则表达式计算文本中的标点符号