加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式提取包含特定单词的超链接

发布时间:2020-12-14 06:06:38 所属栏目:百科 来源:网络整理
导读:我需要从一段文本中提取包含url中特定单词的超链接.例; “这是一个带有某个页面链接的文本.点击此链接 a href =”/ server / specificword.htm这是指向页面的链接 / a看到那个页面.这是一个没有“specificword”一词的链接: a href =“/ server / mypage.ht
我需要从一段文本中提取包含url中特定单词的超链接.例;

“这是一个带有某个页面链接的文本.点击此链接< a href =”/ server / specificword.htm>这是指向页面的链接< / a>看到那个页面.这是一个没有“specificword”一词的链接:< a href =“/ server / mypage.htm>这是一个在url< / a>中没有”specificword“字样的链接

因此,我需要解析此文本,检查超链接以查看其中一个是否包含单词“specificword”,然后提取整个超链接.然后我会以此结束:

<a href="/server/specificword.htm>this is a link to a page</a>

我需要在网址中具有特定字符的超链接,例如. /server/specificword.htm,不在链接文本中

我试过的一个正则表达式就是这个:/(u0026lt;a[^u0026gt;]*u0026gt;.*?u0026lt;/au0026gt;)|pecificword /
这将匹配文本中的所有超链接或“特定字”.如果文本有多个链接,没有“specificword”这个词,我也会得到这些.

此外,我尝试过这个,但它没有任何结果:

<a.*?hrefs*=s*["']([^"'>]*specificword[^"'>]*)["'][^>]*>.*?</a>

我的正则表达式技巧在这里结束,任何帮助都会很棒….

解决方法

试试这个标签:

/<a [^>]*bhrefs*=s*"[^"]*SPECIFICWORD.*?</a>/

或仅为链接(在第一个捕获组中):

/<a [^>]*bhrefs*=s*"([^"]*SPECIFICWORD[^"]*)/

如果您使用php,请访问以下链接:

preg_match_all('/<a [^>]*bhrefs*=s*"K[^"]*SPECIFICWORD[^"]*/',$text,$results);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读