我有这个正则表达式你可以看到www.
是可选的
(https://)(?:www.)?([^./][w.,@?^=%&:/~+#-]*[w@?^=%&/~+#-])
但是这个正则表达式会匹配
https://w.youtube.com
或
https://w...youtube.com
例如,因为它会认为w.
是另一个基团的一部分。但我想防止匹配ww.
或w.
或w...
。应该是www.
或者什么都不写
可以使用
https://(?!w{1,2}.)(?:www.)?([^./][w.,@?^=%&:/~+#-]*[w@?^=%&/~+#-])
https://(?!ww?.)(?:www.)?([^./][w.,@?^=%&:/~+#-]*[w@?^=%&/~+#-])
增加的部分是https://
之后的(?!w{1,2}.)
负正向。它匹配的位置没有立即后跟一个或两个w
字符,后跟一个文字点。
参见regex演示。
也匹配http://
,使s
可选,https?://
.