我尝试编写正则表达式,以检查是否有楼层,电梯和URL中的级别数(知道级别的名称和级别可以更改)。
网址如下:
https://www.mywebsite.com/root/floor-a-1-45/
https://www.mywebsite.com/root/floor-b-2-15/
我也开始编写此代码,但我不知道如何解决我的问题。
import re
def is_http_url(s):
if re.match('https?://(?:www)?(?:[\w-]{2,255}(?:\.\w{2,6}){1,2})(?:/[\w&%?#-]{1,300})?',s):
return True
else:
return False
print is_http_url("https://www.mywebsite.com/root/floor-a-1-50/")
提前致谢。
答案 0 :(得分:0)
https?://(?:www)?(?:[\w.-]{2,255}(?:\.\w{2,6}){1,2})(?:/[\w&%?#-]{0,300})*
您需要调整正则表达式以接受超过1个/aasd
组。请参阅演示。
https://regex101.com/r/fM9lY3/31
还要将您的正则表达式放在r
中,以避免转义问题
re.match(r'https?://(?:www)?(?:[\w.-]{2,255}(?:\.\w{2,6}){1,2})(?:/[\w&%?#-]{0,300})*',s)