如何编写一个能匹配几乎所有网址的正则表达式?

2026-03-30 08:471阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计333个文字,预计阅读时间需要2分钟。

如何编写一个能匹配几乎所有网址的正则表达式?

比较简单的正则表达式如下:

如何编写一个能匹配几乎所有网址的正则表达式?

php$pattern='/^(https?|ftp|rtsp|mms):\/\/[^\s]+$/';$testStr='http://example.com';

if (preg_match($pattern, $testStr, $matches)) { var_dump($matches);} else { echo 不匹配任何网址;}

这段代码检查一个字符串是否是有效的URL,支持HTTP, HTTPS, FTP, RTSP, MMS协议。

比较简单的

$str = ''; $isMatched = preg_match('/^^((https|http|ftp|rtsp|mms)?:\/\/)[^\s]+$/', $str, $matches); var_dump($isMatched, $matches);

几乎可以匹配任何网址:

^((https?|ftp|news):\/\/)?([a-z]([a-z0-9\-]*[\.。])+([a-z]{2}|aero|arpa|biz|com|coop|edu|gov|info|int|jobs|mil|museum|name|nato|net|org|pro|travel)|(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))(\/[a-z0-9_\-\.~]+)*(\/([a-z0-9_\-\.]*)(\?[a-z0-9+_\-\.%=&]*)?)?(#[a-z][a-z0-9_]*)?$

实例:

<script type="text/javascript"> function IsURL(urlString) { regExp = /^((https?|ftp|news):\/\/)?([a-z]([a-z0-9\-]*[\.。])+([a-z]{2}|aero|arpa|biz|com|coop|edu|gov|info|int|jobs|mil|museum|name|nato|net|org|pro|travel)|(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))(\/[a-z0-9_\-\.~]+)*(\/([a-z0-9_\-\.]*)(\?[a-z0-9+_\-\.%=&]*)?)?(#[a-z][a-z0-9_]*)?$/ if (urlString.match(regExp)) return "is a url"; else return "not a url"; } url = ""; alert(IsURL(url)); </script>

本文共计333个文字,预计阅读时间需要2分钟。

如何编写一个能匹配几乎所有网址的正则表达式?

比较简单的正则表达式如下:

如何编写一个能匹配几乎所有网址的正则表达式?

php$pattern='/^(https?|ftp|rtsp|mms):\/\/[^\s]+$/';$testStr='http://example.com';

if (preg_match($pattern, $testStr, $matches)) { var_dump($matches);} else { echo 不匹配任何网址;}

这段代码检查一个字符串是否是有效的URL,支持HTTP, HTTPS, FTP, RTSP, MMS协议。

比较简单的

$str = ''; $isMatched = preg_match('/^^((https|http|ftp|rtsp|mms)?:\/\/)[^\s]+$/', $str, $matches); var_dump($isMatched, $matches);

几乎可以匹配任何网址:

^((https?|ftp|news):\/\/)?([a-z]([a-z0-9\-]*[\.。])+([a-z]{2}|aero|arpa|biz|com|coop|edu|gov|info|int|jobs|mil|museum|name|nato|net|org|pro|travel)|(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))(\/[a-z0-9_\-\.~]+)*(\/([a-z0-9_\-\.]*)(\?[a-z0-9+_\-\.%=&]*)?)?(#[a-z][a-z0-9_]*)?$

实例:

<script type="text/javascript"> function IsURL(urlString) { regExp = /^((https?|ftp|news):\/\/)?([a-z]([a-z0-9\-]*[\.。])+([a-z]{2}|aero|arpa|biz|com|coop|edu|gov|info|int|jobs|mil|museum|name|nato|net|org|pro|travel)|(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))(\/[a-z0-9_\-\.~]+)*(\/([a-z0-9_\-\.]*)(\?[a-z0-9+_\-\.%=&]*)?)?(#[a-z][a-z0-9_]*)?$/ if (urlString.match(regExp)) return "is a url"; else return "not a url"; } url = ""; alert(IsURL(url)); </script>