首先需要确定url的格式,下面随便找两个url:
https://www.runoob.com/http/http-tutorial.htmlhttps://cn.bing.com/?ensearch=1https://www.baidu.com/http://124.128.246.22:8090/onsaling/show.shtml?prjno=03248ea9-e951-495c-a041-c0ee211044b1
从上面几个例子可以看出
1.url一般以http或者https开头
2.后面紧接着是“://”
3.再后面内容就是大小写字母、数字、各种符号的组合了。
第1、2步的正则表达式是(http|https)\:\/\/
最关键的是如何匹配第3步的正则
url中的内容包含大小写字母、数字、下划线可以使用\w
其它字符还包含=、?、:、-、&、#、@、*、%、!、/
把这些内容合并在一块就是(\w|\.|\-|\?|\&|/|\:|\=|\#|\$|\@|\%|\*|\!|\*)*
最后把这两部分合并起来就是
'^(http|https)\:\/\/(\w|\.|\-|\?|\&|\/|\:|\=|\#|\$|\@|\%|\*|\!|\*)*$'
下面是示例代码: