当前位置: 首页 > 知识库问答 >
问题:

使用正则表达式获取Java嵌套复杂URL中的URL路径

孟均
2023-03-14

正则表达式来提取URL路径。我有这个URL,我只想提取它的一个路径,我该如何获取它?

https://myurl.nl/apps/aHR0cHMlM0ElMkYlMkZzc2ktYXBpLmRrLmRldmRrLmRldmlubm9odWIublMkZjaGFsbGVuZ2VzJTGdNGc2Vzc2lvbklkJL2TNEc2VzLTNmZTNiNGYTUwNjEtNGJ45S05NjViLThThhYTQzMTFmYg==?path=aHR0cHM6Ly56dXRvaG9wcGVyLWJhRdtlbmQuZGsuZGV2ZGsuZGV2aW5ub2h1Yi5ubC9hdXRvaG9wcGVyL2R5bmFtaWDwbGlua3M/bG9jYXRpb24961F0YWtlZXBlcg%3D%3D

我想要的路径是从aHR0cHMlM0ElMkYlMkZzc2ktYXBpLmRrLmRldmRrLmRrLmRldmlubm9odWIublMkZjaGFsbGVuZ2VzJTGdNGc2Vzc2lvbclkJL2TNEc2VzLTNmZTNiNGYTUwNjEtNGJ45S05NjViLThhYTQzMTFmYg==?

完整的网址可以分为3部分

  1. https://myurl.nl/apps/

我只需要中间的部分。如何在Java中使用regex获得它?

共有1个答案

曹疏珂
2023-03-14

我们可以在path=之后使用回溯开始,然后转到行的末尾,检查是否没有问号,以确保没有传递其他参数。

(?<=path\=)[^?]*$

如果您想获得path参数,即使后面还有另一个参数,也可以删除行尾的$

 类似资料:
  • 我试图在正则表达式中组合if-else,基本上,如果字符串中存在一些模式,则捕获一个模式,如果不存在,则捕获另一个模式。 字符串是:'https://www.searchpage.com/searchcompany.aspx?companyId=41490234 因此,如果在字符串中检测到“?”,则正则表达式应捕获“?”标记之后的所有内容;如果没有,那就从头抓起。 我使用了:

  • 本文向大家介绍php使用正则表达式获取图片url的方法,包括了php使用正则表达式获取图片url的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php使用正则表达式获取图片url的方法。分享给大家供大家参考。 具体实现方法如下: 希望本文所述对大家的php程序设计有所帮助。

  • 问题内容: 在使用正则表达式时,我使用RegexBuddy。我从其库中复制了正则表达式以匹配URL。我在RegexBuddy中成功测试。但是,当我将其复制为Java 样式并将其粘贴到Java代码中时,它将无法正常工作。以下类打印: 有人知道我在做什么错吗? 问题答案: 请尝试以下正则表达式字符串。你的测试可能以区分大小写的方式进行。我添加了小写字母Alpha以及正确的字符串开头占位符。 这也适用:

  • 使用regex,我希望能够获得多个html标记之间的文本。这里的HTML只是为了表示输入,我不担心HTML标签,只是想检索HTML标签中的内容(在正确的开始和结束标签之间)。例如,以下内容: 所需输入: 所需输出: 获得的输出: Regex我尝试过: 我没有得到预期的结果。 我的java代码:

  • 问题内容: 我一直在寻找URL的简单正则表达式,有人能用得起吗?我在zend框架验证类中找不到一个,并且看到了几种实现。 问题答案: 我在一些项目中使用了此工具,我不认为我遇到了问题,但我敢肯定它并不详尽: 最后,大多数随机垃圾都是用来处理句子中的情况(以避免匹配尾随时间)。我敢肯定它可以清除,但因为它起作用了。我或多或少只是将其复制到项目之间。

  • 问题内容: 我实现了如下所示的Pattern类:http : //www.java2s.com/Code/Java/GWT/ImplementjavautilregexPatternwithJavascriptRegExpobject.htm 我想使用以下正则表达式来匹配我的String中的网址: 不幸的是,Java编译器当然无法解析该字符串,因为它不使用有效的转义序列(因为从技术上讲,以上是Ja