我将如何在正则表达式中执行以下操作?
>>> s=u'https://cdn-a.sonyentertainmentnetwork.com/grc/images/ratings/hd/eirin/R-18.png'
>>> s.split('/')[-1].split('.png')[0].replace('_','-').upper()
'R-18'
应该是获取最后一个/和png之间的item。以下(我目前拥有的)太贪心了——
re.search('/(.+)\.png',s).group()
请您参考如下方法:
为什么不为此使用 urllib 和 os.path?
from urllib.parse import urlparse
s=u'https://cdn-a.sonyentertainmentnetwork.com/grc/images/ratings/hd/eirin/R-18.png'
a=urlparse(s)
import os
p=a.path # /grc/images/ratings/hd/eirin/R-18.png
bn=os.path.basename(p) # R-18.png
print(os.path.splitext(bn)[0]) # R-18
对于 python2,将第一个导入替换为 from six.moves.urllib.parse import urlparse
