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

匹配含%且在?前或无?的URI正则表达式需求

正则表达式解决方案:匹配查询参数前含%的URI

需求回顾

需要匹配满足以下条件的URI:

  • URI包含%字符
  • %要么出现在查询参数分隔符?之前,要么URI本身没有?
  • 若%仅出现在?之后,则不匹配

最终正则表达式

^[^?]*%.*(?:\?.*)?$

正则拆解

  • ^:匹配字符串起始位置
  • [^?]*:匹配任意数量的非?字符,确保后续的%出现在?之前(如果存在?的话)
  • %:匹配目标字符%,这是核心匹配条件之一
  • .*:匹配%之后的任意字符(包括路径剩余部分)
  • (?:\?.*)?:可选的非捕获组,匹配?及后续的查询参数部分(允许存在,但不影响核心匹配逻辑)
  • $:匹配字符串结束位置

匹配验证

  • 不匹配的URI:
    • /apps/jackson/maybe:无%字符,不符合匹配条件
    • /things/halt_something/another?somevar=guay%2:%仅出现在?之后,不满足要求
  • 匹配的URI:
    • /notes/hereitis%there/hack:无?且包含%,符合条件
    • apps/files_pdfvi%ewer/yeah?othervar=guay%3:%出现在?之前,符合条件

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 12:46:03