【问题标题】:Regex that covers all of the following listed URL's涵盖所有以下列出的 URL 的正则表达式
【发布时间】:2020-05-24 19:15:16
【问题描述】:

我需要一个涵盖所有这些的正则表达式,段的名称并不总是相同或顺序或长度相同。

这是用于将删除的 Apache 重写规则

index.php/module/action/param1/asset/css/static/js/jquery/signup/asset/rss/

来自

https://example.com/index.php/module/action/param1/asset/css/static/js/jquery/signup/asset/rss/comment-note

如果存在

所以输入是 https://example.com/index.php/module/action/param1/static/PFBC/js/jquery/rss/static/css/js/jquery/smoothness/templates/themes/datelove/img/icon/xml/sitemap/user/help/rss/legal/rss/comment-picture

需要输出 https://example.com/comment-picture

我需要对所有这些 URL 示例以及它们的任何随机变体执行此操作。 /index.php/module/action/param1/legal/asset/css/asset/signup/user/rss/legal/legal/profile/rss/blog/main/rss/blog/rss/blog /index.php/module/action/param1/static/PFBC/js/jquery/help/faq /index.php/module/action/param1/static/PFBC/js/jquery/rss/static/css/js/jquery/smoothness/templates/themes/datelove/img/icon/xml/sitemap/user/xml/sitemap /rss/评论博客 /index.php/module/action/param1/legal/asset/css/asset/signup/user/rss/legal/legal/profile/rss/blog/main/rss/rss/b/rss/rss/rss/rss /rss/b/rss/博客 /index.php/module/action/param1/static/PFBC/js/jquery/rss/static/css/js/jquery/smoothness/templates/themes/datelove/img/icon/xml/sitemap/user/help/rss /legal/rss/comment-picture /index.php/module/action/param1/static/PFBC/js/jquery/rss/signup/static/js/jquery/templates/themes/datelove/img/icon/asset/css/legal/help/xml/rss /评论博客 /index.php/module/action/param1/static/PFBC/js/jquery/rss/static/css/js/jquery/smoothness/templates/themes/datelove/img/icon/xml/sitemap/note/main/xml /站点地图/rss/合作伙伴 /index.php/module/action/param1/static/PFBC/js/jquery/rss/static/css/js/jquery/smoothness/templates/themes/datelove/img/icon/xml/sitemap/user/xml/sitemap /rss/论坛主题 /index.php/module/action/param1/rss/static/js/jquery/asset/css/game/category/casino /index.php/module/action/param1/legal/asset/css/asset/signup/user/rss/legal/legal/profile/rss/blog/main/rss/rss/b/rss/rss/rss/blog /main/rss/comment-picture /index.php/module/action/param1/asset/css/static/js/jquery/signup/static/css/rss/templates/system/modules/blog/themes/rss/note /index.php/module/action/param1/static/PFBC/js/jquery/rss/static/css/js/jquery/smoothness/templates/themes/datelove/img/icon/xml/sitemap/user/legal/rss /rss/comment-note /index.php/module/action/param1/legal/asset/css/asset/static/js/geo/rss/rss/rss/blog /index.php/module/action/param1/asset/css/static/js/jquery/signup/dating/rss/rss/comment-blog /index.php/module/action/param1/legal/asset/css/asset/signup/user/rss/legal/legal/profile/rss/blog/main/rss/rss/b/xml/rss/rss/rss /rss/注 /index.php/module/action/param1/legal/asset/css/asset/signup/user/rss/legal/legal/profile/rss/blog/main/rss/rss/b/rss/rss/rss/xml /rss/rss/博客 /index.php/module/action/param1/legal/asset/css/asset/signup/user/rss/legal/legal/profile/rss/blog/main/rss/rss/b/rss/rss/rss/rss /rss/rss/rss/comment-blog /index.php/module/action/param1/static/PFBC/js/jquery/rss/signup/static/js/jquery/templates/themes/datelove/img/icon/asset/css/legal/legal/user/birthday -人/rss/评论-视频 /index.php/module/action/param1/static/PFBC/js/jquery/rss/static/css/js/jquery/smoothness/templates/themes/datelove/img/icon/xml/sitemap/user/legal/invite /home/xml/sitemap/xmllink /index.php/module/action/param1/legal/asset/css/asset/signup/user/xml/rss/help/static/js/jquery/rss/forum-topic /index.php/module/action/param1/asset/css/static/js/jquery/signup/asset/rss/comment-note /index.php/module/action/param1/legal/asset/css/asset/signup/user/rss/legal/legal/profile/rss/blog/main/rss/rss/b/rss/rss/blog/category /rss/注 /index.php/module/action/param1/static/PFBC/js/jquery/rss/static/css/js/jquery/smoothness/templates/themes/datelove/img/icon/xml/sitemap/user/xml/rss /帮助/游戏/主/搜索 /index.php/module/action/param1/legal/asset/css/asset/signup/user/rss/legal/legal/profile/xml/rss/rss/forum-topic /index.php/module/action/param1/legal/asset/css/asset/signup/forum/forum/legal/user/birthday-people/dating/rss/comment-picture

【问题讨论】:

  • 你尝试了什么?
  • 如果您提供一些相关的输入及其相应的输出,以及您想要匹配的任何特定条件,那么回答会更有帮助。
  • @Undefined-Variables 您所做的只是提供输出,与输入无关。所有期望结果的共同模式是什么?你想提取每个 index.php 文件,还是其中应该有一些特定的文件夹?发布最少且可验证的示例总是更好。
  • 如果输入是https://example.com/index.php/module/action/param1/asset/css/static/js/jquery/signup/asset/rss/help/faq/finalform,输出会是什么?
  • 输出将是https://example.com/finalform

标签: javascript php html regex .htaccess


【解决方案1】:

这是您可以用来选择要删除的部分的正则​​表达式:

(?:http(?:s|):\/\/)?(?:www.)?(?:.*?\..*?\/)(.*\/)(?=.*?)

如所见here

第一场比赛的

第 1 组 包含您要删除的所有无关部分,因此您可以使用一些替换功能。

【讨论】:

  • 非常感谢。你不知道你刚刚解决的头痛问题 :)
  • @Undefined-Variables 没问题!如果您认为此答案解决了您的问题,请考虑通过单击对勾将其作为正确答案接受。
  • (?:s|) 最好写成s?。这个正则表达式匹配wwww.//
猜你喜欢
  • 2017-05-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-08-17
  • 2011-06-06
相关资源
最近更新 更多