需要正則匹配的字符串,如下圖:
正則表達(dá)式:
((http[s]{0,1}|ftp)://[a-zA-Z0-9\.\-]+\.([a-zA-Z]{2,4})(:\d+)?(/[a-zA-Z0-9\.\-~!@#$%^&*+?:_/=<>[\u4e00-\u9fa5]*]*)+)|(www.[a-zA-Z0-9\.\-]+\.([a-zA-Z]{2,4})(:\d+)?(/[a-zA-Z0-9\.\-~!@#$%^&*+?:_/=<>[\u4e00-\u9fa5]*]*)+)
匹配結(jié)果:
.? ? 匹配除了換行符以外的任意字符;
* ? ?匹配任意數(shù)量,指定*前邊的內(nèi)容可以連續(xù)重復(fù)使用任意次,可能是0次;
+ ? 匹配重復(fù)1次或更多次
.* ? 匹配任意數(shù)量的不包含換行的字符;
\d ?匹配一位數(shù)字(0,1,2...);
- ? ?匹配它本身
{} ? 連續(xù)匹配,如0\d{2}-\d{8} 代表以0開頭,連續(xù)匹配2次數(shù)字,然后是一個(gè)中橫線-,最后在連續(xù)匹配8次數(shù)字
$? 匹配字符串的結(jié)束
^ ? 匹配字符串的開始
\w 匹配字母或數(shù)字或下劃線或漢字
\s ?匹配任意的空白符
\b ?匹配單詞的開始或結(jié)束