Jer*_*its 6 python regex url vimeo
embed_url = 'http://www.vimeo.com/52422837'
response = re.search(r'^(http://)?(www\.)?(vimeo\.com/)?([\/\d+])', embed_url)
return response.group(4)
Run Code Online (Sandbox Code Playgroud)
回应是:
5
Run Code Online (Sandbox Code Playgroud)
我希望
52422837
Run Code Online (Sandbox Code Playgroud)
有人有想法吗?我对正则表达式很不满意:S
Col*_*nic 10
不要重新发明轮子!
>>> import urlparse
>>> urlparse.urlparse('http://www.vimeo.com/52422837')
ParseResult(scheme='http', netloc='www.vimeo.com', path='/52422837', params='',
query='', fragment='')
>>> urlparse.urlparse('http://www.vimeo.com/52422837').path.lstrip("/")
'52422837'
Run Code Online (Sandbox Code Playgroud)
使用\d+(无括号)匹配文字斜杠 + 数字:
response = re.search(r'^(http://)?(www\.)?(vimeo\.com/)?(\d+)', embed_url)
Run Code Online (Sandbox Code Playgroud)
结果:
>>> re.search(r'^(http://)?(www\.)?(vimeo\.com/)?(\d+)', embed_url).group(4)
'52422837'
Run Code Online (Sandbox Code Playgroud)
您正在使用[...]不需要的字符组 ( )。模式[\/\d+]匹配的只有一个/,+或一个数字。