用正则表达式得到一个页面的所有链接

只验证了href的链接,对于<script src=..></script>和<img src="">,mailto都不行,但是可以学一下正则表达式的应用 

<html> 
<head><title>正则表达式</title></head> 
<body> 
<a href="./">返回列表</a><br> 
<form action="<?echo $PHP_SELF;?>" method="post"> 
URL:<input type="text" name="url" value="<?echo $url?>"><input type="submit" value="获取所有裢接"> 
</form> 
<? 
if(isset($url)){ 
echo "$url 有下列裢接:<br>"; 
$fcontents = file($url); 
while(list(,$line)=each($fcontents)){ 
while(eregi('(href[[:space:]]*=[[:space:]]*"?[[:alnum:]:@/._-]+"?)(.*)',$line,$regs)){ 
$regs[1] = eregi_replace('(href[[:space:]]*=[[:space:]]*"?)([[:alnum:]:@/._-]+)("?)',"2",$regs[1]); 
echo " $regs[1]<br>"; 
$line = $regs[2]; 



?> 
</body> 
</html> 

你可能感兴趣的:(用正则表达式得到一个页面的所有链接)