我当前的正则表达式如下:r"rtsp://\w+:\w+@[\w\.-]+"
。我的编程语言是Python
但是,有些URL看起来像这样,并且不匹配:
rtsp://admin:fjs!hfk@my-cam.fritz.box/xxx/yyyy/1?transportmode=unicast
我可以将正则表达式更改为r"rtsp://\w+:[\w!]+@[\w\.-]+"
,以匹配!
。我不在乎URL的结尾(/xxx/yyyy/1?transportmode=unicast
)
我的问题是有没有一个规范<user>
、<password>
和<hostname>
可以是什么类型的字符?因为我可能不是什么都匹配。我一直在向\w
添加字符,但我不想像我如何向密码添加!
,向主机名添加-
和.
这样的快速修复
有人可能在密码中有@
吗?我也需要处理这个问题
稍后,我将添加提取用户、密码和主机名的捕获组
不要在这里乱搞正则表达式,它已经为您完成了:
这就产生了
现在,您可以只使用以下属性:
见the help page for more information
相关问题 更多 >
编程相关推荐