jQuery参数替换并上传所有URL中的两个字符串

时间:2017-09-14 13:46:03

标签: javascript jquery ajax string url-redirection

WordPress的FacetWP插件有一个'facetwp-loaded'jQuery事件,允许在刷新facet时进行更改。

这是来自FacetWP文档的'facetwp-loaded'事件的用法:

(function($) {
    $(document).on('facetwp-loaded', function() {

        // Changes go here

    });
})(jQuery);

Facets产生的URL如下:

http://website.com/hotels?fwp_location=worldwide

http://website.com/hotels/worldwide?fwp_location=europe

所以我想做一个全局正则表达式重定向来替换

之间的内容
hotels

=

/

在上面的例子中,这将导致:

http://website.com/hotels/worldwide

http://website.com/hotels/europe

有人可以帮我这个吗?

提前致谢

更新

我尝试过不同的Regex方法,但似乎需要jQuery参数替换/更新。

1 个答案:

答案 0 :(得分:0)

我没有办法使用Wordpress正则表达式引擎对此进行测试,因此您必须检查它,但它可以在R regex引擎中运行。希望Wordpress支持perl风格的正则表达式。

正则表达式:匹配:(?<=hotels).*?=并替换为/

在这种情况下,我们要删除的字符串前面有&#34; hotels&#34;并以等号结束。所以我们希望在酒店之后立即匹配所有内容,以等号结束。在&#34;酒店&#34;之后立即开始匹配但不包括它,我们需要向后看。所以我们在比赛前使用了一下。 (?<=hotels)表示从字符串中的当前位置向后看,并查看&#34;酒店&#34;在当前位置之前。所以当引擎进入&#34; /&#34;在酒店之后,它回顾并看到酒店(但它并不匹配,因为它看起来很落后)。 .匹配任何字符,*表示匹配零或更多(任何字符为零或更多),?修改*告诉星号匹配零或更多字符,但只能匹配下一个字符,在这种情况下=