【问题标题】:Regex to extract categories/sub-categories from urls with python正则表达式使用 python 从 url 中提取类别/子类别
【发布时间】:2014-09-23 14:21:38
【问题描述】:
我有要解析表单的网址:
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
具有不断变化的类别、子类别和子子类别。
我可以使用什么正则表达式来提取存在的类别、子类别和子子类别?有没有更好的方法可以使用这些变量?
【问题讨论】:
标签:
python
regex
url
categories
【解决方案1】:
你为什么不直接在/分割字符串
categories = url.split('/')[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