当前位置 : 主页 > 网络编程 > 正则表达式 >

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

来源:互联网 收集:自由互联 发布时间:2020-11-08
譬如 限制只允许正则出现以下的 a-Z 0-9 http:// 匹配连贯 https:// 匹配连贯 / 不可连续两个出现 % ? 不可连续两个出现 = 等号 - 中划线 _ 下划线 . 点 很重要 有如下正则符合 ^((?:http|https)://
譬如 限制只允许正则出现以下的
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之间
■字符 “-”
■一个字符 是“._%&=/?”其中的一个
•断言在字符串的末端位置
网友评论