Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 可编码的URL的Reg Exp_Arrays_Regex - Fatal编程技术网

Arrays 可编码的URL的Reg Exp

Arrays 可编码的URL的Reg Exp,arrays,regex,Arrays,Regex,我有这样一个url模式:/users/orders/{orderId}。 orderId可以包含字母、数字,也可以是url编码的。 e、 g: /用户/订单/123 /用户/订单/广告 /用户/订单/13as /用户/订单/34sl%3F 我需要的是与url架构匹配的Reg Exp。 我是从^/users/orders/[a-zA-Z0-9]+$开始的 但我在结尾缺少了类似或%A-Z0-9的内容 谢谢^\/users\/orders\/((?:[\w-]\%\w{2})+$-demo@ ^\

我有这样一个url模式:/users/orders/{orderId}。 orderId可以包含字母、数字,也可以是url编码的。 e、 g:

  • /用户/订单/123
  • /用户/订单/广告
  • /用户/订单/13as
  • /用户/订单/34sl%3F
我需要的是与url架构匹配的Reg Exp。
我是从
^/users/orders/[a-zA-Z0-9]+$
开始的
但我在结尾缺少了类似或
%A-Z0-9
的内容

谢谢

^\/users\/orders\/((?:[\w-]\%\w{2})+$
-demo@

^\/users\/orders\/
——ORDERID之前的URL部分,定位到行的开头

[\w-]
--等于
[A-Za-z0-9.-]

\%\w{2}
--一个
%
符号,后跟两个
[a-Za-z0-9]
实例

((?:[\w-]\%\w{2})+$
——前两种模式的一个或多个实例,捕获并锚定到行的末尾。

^\/users\/orders\/(?:[\w-]\%\w{2})+$
-demo@

^\/users\/orders\/
——ORDERID之前的URL部分,定位到行的开头

[\w-]
--等于
[A-Za-z0-9.-]

\%\w{2}
--一个
%
符号,后跟两个
[a-Za-z0-9]
实例


(((?:[\w-]\%\w{2})+$
——前两种模式的一个或多个实例,捕获并锚定到行的末尾。

为什么不在匹配正则表达式之前解码url?您可以将
%
添加到您的字符类中。这对我很有用,以下内容将匹配我能想到的大多数编码字符:/users/orders/([%\w!\^-]*(&[glt]+;)+@Bergi我以前无法解码它。如果可以的话,我需要什么来匹配所有允许的字符和符号。为什么不在匹配正则表达式之前先解码url呢?您可以将
%
添加到您的字符类中。这对我来说很有用,以下内容将匹配我能想到的大多数编码字符:/users/orders/([%\w!\^-]*(&[glt]+;)*)+@Bergi我以前无法破译它。如果可以,我需要什么来匹配所有允许的字符和标志。