Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.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
Regex 在url中匹配多个斜杠,但在协议中不匹配_Regex_.htaccess - Fatal编程技术网

Regex 在url中匹配多个斜杠,但在协议中不匹配

Regex 在url中匹配多个斜杠,但在协议中不匹配,regex,.htaccess,Regex,.htaccess,我尝试在ende或url内部捕获多个斜杠,但不捕获那些放在协议(http://,https://,ftp://)之后的斜杠(可以是两个或更多) 我在类似的SO线程中尝试了许多发现,如中的^(.*)/+(.*)$或[^:](\/{2,}),或^(.*)(/{2,})(.*)$,和。但对我来说什么都不清楚 这很奇怪,我找不到一个有效的例子——这个目标并不罕见。有人可以共享一个工作的正则表达式吗?这里有一条规则,您可以在站点根目录中使用。htaccess可以从输入URL的任意位置删除多个斜杠: Rew

我尝试在ende或url内部捕获多个斜杠,但不捕获那些放在协议(http://,https://,ftp://)之后的斜杠(可以是两个或更多)

我在类似的SO线程中尝试了许多发现,如中的
^(.*)/+(.*)$
[^:](\/{2,})
,或
^(.*)(/{2,})(.*)$
,和。但对我来说什么都不清楚


这很奇怪,我找不到一个有效的例子——这个目标并不罕见。有人可以共享一个工作的正则表达式吗?

这里有一条规则,您可以在站点根目录中使用。htaccess可以从输入URL的任意位置删除多个斜杠:

RewriteEngine On

RewriteCond %{THE_REQUEST} //
RewriteRule ^.*$ /$0 [R=301,L,NE]
_REQUEST
变量表示Apache从浏览器收到的原始请求,在执行某些重写规则后不会被覆盖。此变量的示例值为
GET/index.php?id=123 HTTP/1.1


RewriteRule
中的模式自动将多个斜杠转换为单个斜杠。

什么是正则表达式风格?@anubhava:no:(用我上面提到的三个站点测试,不起作用。试图逃离sleads-同样,不起作用。@WiktorStribiż查看apache/htaccessHere的its,-不确定它在htaccess中是否起作用,anubhava将帮助您更好地使用它。)this@WiktorStribiżew,否:(错误:它只在URL的结尾工作吗?在URL中间有多条斜杠的规则有其他的外观: