Regex表达式以匹配URL
Regex Expression to match URLs
我有以下正则表达式来检测URLS:
/('b(https?|ftp|file):'/'/[-A-Z0-9+&@#'/%?=~_|!:,.;]*[-A-Z0-9+&@#'/%=~_|])/ig
但是,它不检测诸如www.google.ca
和tlk.tc/ApSE
之类的URL。有没有一个正则表达式可以检测这些URL?我正在使用javascript。
编辑:
试试这个:
(('b(https?|ftp|file):'/'/)?[-A-Z0-9+&@#'/%?=~_|!:,.;]+'.[-A-Z0-9+&@#'/%=~_|]+)
它使方案成为可选方案,以支持您在示例中显示的两种情况。
用于URL的IETF RFC-2396为解析URL提供了以下正则表达式:
^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)('?([^#]*))?(#(.*))?
它将捕获组映射到以下组件:
scheme = $2
authority = $4
path = $5
query = $7
fragment = $9
请注意,您给出的示例www.google.ca
和tlk.tc/ApSE
不是"有效"URL,但我相信它们无论如何都会被正则表达式匹配。
这个表达式可以执行您想要的操作。这不是这个正则表达式匹配的有效URL,但它符合您的要求:
/('b(https?|ftp|file):'/'/|'bwww'.[-A-Z0-9+&@#'/%?=~_|!:,.;]*[-A-Z0-9+&@#'/%=~_|])|(['S]+'.([a-z]{2,})+?'/['S]+)/gi
相关文章:
- 通过正则表达式从字符串中提取Url
- 用于确定URL视频ID的正则表达式
- url正则表达式不适用于javascript中的localhost
- JavaScript 中 URL 的正则表达式模式
- 什么'用这个正则表达式查找URL是错误的
- 修改以下正则表达式,使其在URL末尾包含斜杠
- javascript正则表达式url(url子字符串)
- url的正则表达式有问题
- 使用JavaScript正则表达式从html srcset获取图像url
- 与URL参数匹配的正则表达式
- 基于url hash-hullbs.js更改表达式
- 为什么正则表达式不能正确验证网站URL
- JavaScript正则表达式,带有URL激活以及微笑符号等
- 将背景图像URL与正则表达式匹配
- JavaScript 正则表达式以匹配 URL
- 通过 JavaScript 和正则表达式将图像 URL 替换为文本 URL
- 如何使用正则表达式验证 JavaScript 中的自定义 URL
- 要从 URL 检索的正则表达式
- 调整 javascript 正则表达式以过滤来自 url 的变量
- javascript RegExp 验证 url 表达式