完全短地址正则兼容各种情况:
/((http|https|ftp|ftps):\/\/)?([a-zA-Z0-9-]+\.){1,5}(com|cn|net|org|hk|tw|click|win|hn|mp|ly|me|so)((\/(\w|-)+(\.([a-zA-Z0-9]+))?)+)?(\/)?(\??([\.%:a-zA-Z0-9_-]+=[#\.%:a-zA-Z0-9_-]+(&)?)+)?/g
微博短地址识别正则表达式
最近做一个微博类的工作站,哭哭找没找到,只能自己根据需求写了一个
识别以中文和空格作为结束符号
短地址识别正则如下:
((http|https|ftp|ftps):\/\/)?([a-zA-Z0-9-]+\.){1,5}(com|cn|net|org|hk|tw)((\/(\w|-)+(\.([a-zA-Z]+))?)+)?(\/)?(\??([\.%:a-zA-Z0-9_-]+=[#\.%:a-zA-Z0-9_-]+(&)?)+)?
解释:
((http|https|ftp|ftps)://)?
表示是否带有请求的头部
([a-zA-Z0-9-]+.){1,5}(com|cn|net|org|hk|tw)
表示域名的本身,包含了5极和域名后缀
((/(\w|-)+(.([a-zA-Z]+))?)+)?(/)?
表示域名后紧跟的域名地址
包含了直接跟"/"、"////."的情况
(/)?(??([.%:a-zA-Z0-9_-]+=[#.%:a-zA-Z0-9_-]+(&)?)+)?
表示编码后的url地址
包含了"?="、"?=&=**#sdsd"的情况
缺点:
与新浪微博一样,容易将话题的#符号一起作为短地址的一部分
网友评论