网络编程 
首页 > 网络编程 > 浏览文章

让URL只允许一些字符的正则表达式

(编辑:jimmy 日期: 2024/11/16 浏览:3 次 )
譬如 限制只允许正则出现以下的
a-Z
0-9
http:// 匹配连贯
https:// 匹配连贯
/ 不可连续两个出现
&
%
? 不可连续两个出现
= 等号
- 中划线
_ 下划线
. 点 很重要

有如下正则符合

^((?:http|https)://)?((?![/?]{2,})[a-zA-Z0-9\-._%&=/?])+$

RegexBuddy3 翻译工具

^((?:http|https)://)?((?![/?]{2,})[a-zA-Z0-9\-._%&=/?])+$
•断言在字符串的开头位置
•逆向引用1
◦重复0次到1次,尽可能多的匹配(贪婪)
◦用以下正则表达式匹配
■用以下正则表达式匹配(这一个正则表达式失败时用下一个正则表达式的替代)
■匹配字符“http”
■用以下正则表达式匹配(这一个正则表达式匹配失败,这一集合都不匹配)
■匹配字符“https”
◦匹配字符“://”
•逆向引用2
◦重复1次到无限次,尽可能多的匹配(贪婪)
◦注:你又逆向引用本身。匹配将以最后一个逆向引用做为引用。把重复的逆向引用迭代。
◦否定式向前查看
■匹配一个在下面的列表出现的字符“/?”
■Between 2 and unlimited times, as many times as possible, giving back as needed (greedy)
◦匹配一个在下面的列表出现的字符
■一个字符 其范围是a到z之间
■一个字符 其范围是A到Z之间
■一个字符 其范围是0到9之间
■字符 “-”
■一个字符 是“._%&=/?”其中的一个
•断言在字符串的末端位置
上一篇:正则中需要转义的特殊字符小结
下一篇:正则表达式教程之模式修正符使用介绍
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。