正则表达式使用python从url中提取类别/子类别

时间:2014-09-23 14:21:39

标签: python regex url categories

我有解析表格的网址:

www.my-journal.com/category/sub-category/sub-sub-category/title
www.my-journal.com/category/sub-category/sub-sub-category
www.my-journal.com/category/sub-category/
www.my-journal.com/category/
www.my-journal.com

更改类别,子类别和子子类别。

我可以使用什么正则表达式来提取类别,子类别和子子类别?有没有更好的方法可以使用这些变量?

2 个答案:

答案 0 :(得分:3)

为什么不将字符串拆分为/

categories = url.split('/')[1:]

答案 1 :(得分:2)

>>> txt = 'www.my-journal.com/category/sub-category/sub-sub-category/title'
>>> re.findall(r'/[^/]*', txt)
['/category', '/sub-category', '/sub-sub-category', '/title']

如果只有最多3个级别,那么可能:

>>> iter = re.finditer(r'/([^/]*)', txt)
>>> for _, m in zip(range(3), iter):
...     print(m.group(1))
... 
category
sub-category
sub-sub-category