将url的一部分与正则表达式匹配

时间:2015-02-10 21:45:09

标签: regex

我有一个正则表达式与网址匹配的挑战我希望我可以通过以下方式让你们中的一些聪明人头疼: - )

请查看此测试用例https://www.regex101.com/r/bH4hE1/2

我使用正则表达式:(\ w +)(。\ w +)+(?!。*(\ w +)(。\ w +)+)

问题是,它只找到reports.html但我还需要在第一个网址

中查找报告

https://my.website.com/reports?ref_=kdp_BS

https://my.website.com/reports.html

2 个答案:

答案 0 :(得分:2)

要在任何路径中捕获“报告”或“reports.html”,请在上一个/之后开始匹配,并捕获字词和.

/.*\/([.\w+]+)/

请参阅:https://www.regex101.com/r/iZ7dF3/8

答案 1 :(得分:0)

尝试:

/([^\/?]+)(?:\?.+)?$/gim

它将工作结束选择:

reports
reports.html