我在Python中有一个字符串“/browse/advanced-computer-science-modules?title=machine-learning”**,我想打印第二个"/"
和第一个"?"
之间的字符串,即"advanced-computer-science-modules"
。
我创建了一个如下所示的正则表达式^([a-z]*[\-]*[a-z])*?$
,但是当我从re模块运行.findall()
函数时,它什么也不输出。
我创建了自己的正则表达式,并在python中导入了re
模块,下面是我的代码片段,没有返回任何内容。
regex = re.compile(r'^([a-z]*[\-]*[a-z])*?$')
str = '/browse/advanced-computer-science-modules?title=machine-learning'
print(regex.findall(str))
3条答案
按热度按时间nwnhqdif1#
由于这看起来是一个URL,我建议您使用URL解析工具:
kgsdhlau2#
正则表达式如下所示:
然后你得到子字符串:
非常具体到这个问题,但它应该工作。
m0rkklqb3#
或者,可以使用
string
的split
方法: