我们正在使用一个CMS,它生成格式为www.domain.com/home/help/contact/contact的URL。这里,联系人的第一次出现是目录,第二次出现是HTML页面本身。这些urls会导致SEO空间中的问题。
我们已经实现了规范标记,但企业希望确保他们不会在搜索引擎和Google分析中遇到这些重复,并要求我们在我们的web服务器上实现301解决方案。
我的问题是,我们有一个正则表达式来查找这些匹配,但我也需要在匹配之前的部分URL。我们使用的正则表达式是.*?([\w]+)\/\1+,它在/home/help/contact/contact中返回contact。如何获得/home/help/路径,以便重定向到正确的页面?有人能帮忙吗,因为我是初学者,当涉及到regex的时候?
发布于 2017-06-01 04:55:23
由于您可以使用匹配组获得contact,所以在匹配组中包含之前的所有内容:
(.*?)(/[\w]+)\2+我也将/放在一个匹配组中,这样您就不会得到假阳性。
/home/some/app/page
this would be \1 ^ ^ found repetition (character p would be matched)https://stackoverflow.com/questions/44297203
复制相似问题