如何将ReGEX表达式看作块来应用LoopBeIDS和查找表?
我正在尝试转换此类型的字符串:如何将ReGEX表达式看作块来应用LoopBeIDS和查找表?,regex,.htaccess,redirect,infinite-loop,Regex,.htaccess,Redirect,Infinite Loop,我正在尝试转换此类型的字符串: http://example.com/mypage/272-16+276-63+350-02 其中,aaa bb是产品代码,它们的数字可能从2到任何数字不等,但我怀疑其中可能会有超过5个: http://example.com/mypage/272-16+276-63+350-02/?SKU=272-16+276-63+350-02 使用重定向匹配。我对正则表达式还相当陌生,而且我似乎无法按照我想要的方式使用负的前向和后向 第一次捕获字符串相当容易,我使用了([\
http://example.com/mypage/272-16+276-63+350-02
其中,aaa bb
是产品代码,它们的数字可能从2到任何数字不等,但我怀疑其中可能会有超过5个:
http://example.com/mypage/272-16+276-63+350-02/?SKU=272-16+276-63+350-02
使用重定向匹配。我对正则表达式还相当陌生,而且我似乎无法按照我想要的方式使用负的前向和后向
第一次捕获字符串相当容易,我使用了([\-\+0-9]+)
,但我不希望它在重定向时匹配(当我的链接中已经有一个?时)。使用([\-\+0-9]+)(?!\?)(?可以尝试(?您不能将mod_rewrite(RewriteCond)和mod_alias(RedirectMatch)混合在一起。您需要坚持使用其中一个,并且无法将查询字符串与RedirectMatch匹配,因此您使用mod_rewrite:
RewriteEngine On
RewriteCond %{QUERY_STRING} !skus=
RewriteRule ^mypage/([\-\+0-9]+)$ /mypage/$1?skus=$1 [L,R=301]
你使用这个正则表达式的目的是什么语言/技术?真的不确定你在问什么,你能澄清这个问题并提供简洁的例子和你想要匹配的吗?@nhahtdh:这是一个WP网站,这进入了一个新的领域。htaccess@remus:基本上,我想使用重定向匹配将重定向从第一个链接放到第二个链接t具有无限重定向循环。正则表达式是否确实需要验证所有产品代码是否也是相同的格式?例如,272-16+2-63+350-02
将不匹配,因为第二个产品的第一个数字长度不是3。