其他教程

其他教程

Products

当前位置:首页 > 其他教程 >

正则表达式,用于匹配标签的最后一次出现

GG网络技术分享 2025-03-18 16:15 2


问题描述:

I am trying to extract the contact link from the HTML code below. I have tried this but doesn\'t seem to work:

\\\"([^\\\"]*)\\\"(.*?)?\\>(Kontakt)

and some part HTML-code:

<li id=\"cc-nav-view-2315645627\" class=\"jmd-nav__list-item-0\">

<a href=\"/\" data-link-title=\"Start\" class=\"cc-nav-current j-nav-current jmd-nav__link--current\">Start</a>

</li>

<li id=\"cc-nav-view-2315645625\" class=\"jmd-nav__list-item-0\">

<a href=\"/öffnungszeiten-schließzeiten/\" data-link-title=\"Öffnungszeiten &amp; Schließzeiten\">Öffnungszeiten &amp; Schließzeiten</a>

</li>

<li id=\"cc-nav-view-2316315025\" class=\"jmd-nav__list-item-0\">

<a href=\"/flyer/\" data-link-title=\"Flyer\">Flyer</a>

</li>

<li id=\"cc-nav-view-2315732425\" class=\"jmd-nav__list-item-0\">

<a href=\"/anfahrt/\" data-link-title=\"Anfahrt\">Anfahrt</a></li>

<li id=\"cc-nav-view-2315645825\" class=\"jmd-nav__list-item-0\">

<a href=\"/kontakt-termin-verbeinaren/\" data-link-title=\"Kontakt / Termin verbeinaren\">Kontakt / Termin verbeinaren</a>

</li>

I need to get the last a href occurrence with the contact link, but regexp returns the full string.

Check this link.

网友观点:

This expression might help you to design a desired one to do so:

(.*)(<a href=\\\")([A-z0-9-\\/]+)(\\\".*)

It swipe from beginning using (.*) to the last href, then you can add any boundary that you wish to capture that target URL.

Graph

This graph shows how it works:

I\'m not so sure, if you want just the URL or the entire tag. If you wish to get the entire tag, then the expression can be simply modified to something similar to:

(.*)((<a href=\\\")(.*)(\\<\\/a\\>))

正则表达式-笔记

正则表达式的作用是用来匹配符合某种规则的字符串,广泛用于:

  • 检索字符串中符合某种规则的多个子字符串
  • 判断用户的输入是否符合某种规则
  • 替换字符串中符合某种规则的文本
  • 用户的输入是不是合法的用户名、邮箱、手机号

两种创建正则表达式的方法

字面量创建

标签:

提交需求或反馈

Demand feedback