You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

URL验证正则表达式问题:需排除方括号并修正匹配异常

URL正则表达式调整方案

问题说明

当前使用的URL验证正则无法匹配https://stackoverflow[.]onion这类含方括号的URL,需调整正则以排除方括号,实现正确验证。

当前正则表达式

/^$|^((ftp|http|https):\/\/)?(www\.)?[\w$-_.+!*'(),#%{}|\\^~\[\]<>#%"]+(\.[\w$-_.+!*'(),#%{}|\\^~\[\]<>#%"]+)+((\/)[\w$-_.+!*'(),#%{}|\\^~\[\]<>#%"]+)*(\/[\w$-_.+!*'(),#%{}|\\^~\[\]<>#%"]+\?[\w$-_.+!*'(),#%{}|\\^~\[\]<>#%"]+=[^&=]+(&[\w$-_.+!*'(),#%{}|\\^~\[\]<>#%"]+=[^&=]+)*)?$/im

调整思路

原正则的所有合法字符集中包含了\[\](方括号),导致匹配时会将方括号视为有效字符。只需从所有字符集中移除\[\],即可排除含方括号的URL。

调整后的正则表达式

/^$|^((ftp|http|https):\/\/)?(www\.)?[\w$-_.+!*'(),#%{}|\\^~<>#%"]+(\.[\w$-_.+!*'(),#%{}|\\^~<>#%"]+)+((\/)[\w$-_.+!*'(),#%{}|\\^~<>#%"]+)*(\/[\w$-_.+!*'(),#%{}|\\^~<>#%"]+\?[\w$-_.+!*'(),#%{}|\\^~<>#%"]+=[^&=]+(&[\w$-_.+!*'(),#%{}|\\^~<>#%"]+=[^&=]+)*)?$/im

效果说明

调整后的正则移除了所有允许字符集中的方括号规则,验证时会自动排除包含方括号的URL,同时保留对其他合法URL格式的匹配能力。

内容的提问来源于stack exchange,提问作者SAMRAT

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 06:39:51