java 爬虫正则的问题

发布于 2022-09-12 13:42:37 字数 862 浏览 24 评论 0

String Match=""(https://www.tianyancha.com/company/d+)" target='_blank'";
Pattern pattern=Pattern.compile(Match);

Headers.put("user-agent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36");
Response=HttpGet("https://www.tianyancha.com/search?key=%E5%8C%97%E4%BA%AC%E7%AB%8B%E7%BA%A2%E9%A4%90%E9%A5%AE%E7%AE%A1%E7%90%86%E6%9C%89%E9%99%90%E5%85%AC%E5%8F%B8",Headers);
Matcher MatcherUrl=pattern.matcher(Response);
if(MatcherUrl.find()) {
    System.out.println("打印匹配数据");
    System.out.println(MatcherUrl.group(0));
  }

结果是

打印匹配数据
"https://www.tianyancha.com/company/4079618929" target='_blank'

我想要的其实就是

https://www.tianyancha.com/company/4079618929

如何不改变Pattern 只匹配其中的部分内容呢?
python 里面只要大括号就能匹配 括号里面的内容

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

沉溺在你眼里的海 2022-09-19 13:42:37

我感觉你不需要正则表达式,直接调 Response.getURI()就可以了,可以试试,不知道你用的那个框架解析的HTTP的Response

关注我的博客: https://www.epoooll.com/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文