正则表达式:

(?x)\A
[a-z][a-z0-9+\-.]*://                   # Scheme
([a-z0-9\-._~%!$&'()*+,;=]+@)?          # User
([a-z0-9\-._~%]+                        # Named or IPv4 host
|\[[a-z0-9\-._~%!$&'()*+,;=:]+\])       # IPv6+ host
:(?P<port>[0-9]+)                       # Port number

Python代码:

import re
subject = 'http://www.regexcookbook.com:80/'

reobj = re.compile(r'''(?x)\A
[a-z][a-z0-9+\-.]*://                   # Scheme
([a-z0-9\-._~%!$&'()*+,;=]+@)?          # User
([a-z0-9\-._~%]+                        # Named or IPv4 host
|\[[a-z0-9\-._~%!$&'()*+,;=:]+\])       # IPv6+ host
:(?P<port>[0-9]+)                       # Port number
''')

match = reobj.search(subject)
if match:
    print match.group(3)


Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐