将所有链接与特定文本匹配

2023-12-14

我正在寻找 PHP 中的正则表达式,它将锚点与其上的特定文本相匹配。例如。我想获得带有文本 mylink 的锚点,例如:

<a href="blabla" ... >mylink</a>

所以它应该匹配所有锚点,但前提是它们包含特定文本所以它应该匹配这些字符串:

<a href="blabla" ... >mylink</a>

<a href="blabla" ... >blabla mylink</a>

<a href="blabla" ... >mylink bla bla</a>

<a href="blabla" ... >bla bla mylink bla bla</a>

但不是这个:

<a href="blabla" ... >bla bla bla bla</a>

因为这个不包含 mylink 这个词。

另外,这个也不应该匹配:"mylink is string"因为它不是锚。

有人有什么想法吗?


尝试使用解析器代替:

require_once "simple_html_dom.php";

$data = 'Hi, I am looking for a regular expression in PHP which would match the anchor with a 
specific text on it. E.g I would like to get anchors with text mylink like: 
<a href="blabla" ... >mylink</a>

So it should match all anchors but only if they contain specific text So it should match t
hese string:

<a href="blabla" ... >mylink</a>

<a href="blabla" ... >blabla mylink</a>

<a href="blabla" ... >mylink bla bla</a>

<a href="blabla" ... >bla bla mylink bla bla</a>

but not this one:

<a href="blabla" ... >bla bla bla bla</a> Because this one does not contain word mylink.

Also this one should not match: "mylink is string" because it is not an anchor.

Anybody any Idea? Thanx Granit';

$html = str_get_html($data);

foreach($html->find('a') as $element) {
  if(strpos($element->innertext, 'mylink') === false) {
    echo 'Ignored: ' . $element->innertext . "\n";
  } else {
    echo 'Matched: ' . $element->innertext . "\n";
  }
}

产生输出:

Matched: mylink
Matched: mylink
Matched: blabla mylink
Matched: mylink bla bla
Matched: bla bla mylink bla bla
Ignored: bla bla bla bla

下载simple_html_dom.php from: http://simplehtmldom.sourceforge.net/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将所有链接与特定文本匹配 的相关文章

  • Magento - 检查 cms 页面

    我想通过 php 检查页面是否是 Magento 中的 cms page 我需要不同的 cms 页面面包屑 所以我尝试在一个条件下做到这一点 但我不知道如何或在哪里查看 到目前为止 这是我的 breadcrumbs phtml p some
  • Apache、PHP 和 MySQL 可移植吗?

    我可以在外部硬盘上运行 Apache PHP 和 MySQL 吗 我需要这个 因为我在不同的地方工作 计算机 有时我没有安装和配置所有使用的应用程序 当然可以 XAMPP http www apachefriends org en xamp
  • 如何在 OS X 上使用 OpenSSL 1.0.1 编译 PHP 5.5.19

    我已经安装了 OpenSSL 1 0 1j usr local ssl现在我尝试使用此版本的 OpenSSL 编译 PHP 5 5 19 这是我的配置过程 export CFLAGS arch x86 64 export CXXFLAGS
  • WordPress 插件中的类自动加载器

    我想编写一个类自动加载器以在 WordPress 插件中使用 该插件将安装在多个站点上 我想尽量减少与其他插件发生冲突的机会 自动加载器将是这样的 function autoload name some code here 我的主要问题是
  • PHP 数组通过 JSON 转为 jquery 数组

    我有点困惑为什么以下不起作用 get php
  • 从数据库填充复选框

    我有两个表 第一个由与名称关联的 id 组成 1 汽车 2 火车 3 普通 ETC 第二个表由两个字段 user id 和第一个表中的 id 组成 例如 1 1 2 1 3 当用户转到该页面时 我试图重新填充选定的复选框 首先 您查询数据库
  • 从 PHP 数组生成 HTML 表

    我不明白这一点 我需要解决看似简单的问题 但这超出了我的逻辑 我需要编写一个函数 table columns input cols 它将输出一个表 示例 input array apple orange monkey potato chee
  • 如何使用 XPath 正则表达式匹配 URL

    需要 XPath 方面的帮助 我有这样一个XML
  • 如何从父类中获取子类名

    我试图在不需要子类上的函数的情况下完成此任务 这可能吗 我有一种感觉 但我真的很想确定
  • 一种无需 JavaScript 即可在 PHP 中确定浏览器宽度的方法?

    首先有吗 或者我必须使用javascript 我希望能够更改使用的 CSS 因此 frex 我可以为移动设备或其他设备加载较小的字体 不幸的是 仅使用 PHP 无法检测用户分辨率 如果您使用 Javascript 则可以在 cookie 中
  • CodeIgniter 自定义库未加载

    我是 CodeIgniter 的新手 并尝试用它开发一个相当简单的应用程序 只是一个用于处理想要娱乐中心通行证的员工的注册的表单 我正在尝试将事物分开以使它们更清晰 这是代码 应用程序 控制器 reccenter php class Rec
  • 图像随机损坏(但刷新后加载)并显示“资源解释为图像但使用 MIME 类型 text/html 传输”

    我目前正在开发一个简单的 php 网站 问题是 我的整个网站中的图像 发生在所有 php 文件中 随机损坏并显示错误资源解释为图像 但以 MIME 类型 text html 传输但是 如果我尝试多次刷新页面 可以再次加载图像并且错误消失 我
  • AWS-PHP-SDK / SNS 直接寻址返回错误

    您好 我正在使用 Laravel 4 设置来利用 AWS SNS 向我的 iOS 设备发送推送消息 从 AWS 控制台向我的设备发布命令效果很好 然后我尝试从 PHP sns AWS get sns sns gt publish array
  • PHP - 如何获取主要 HTML 内容,例如 Firefox 中的阅读器模式

    在 android Firefox 应用程序和 safari iPad 中 我们只能通过 阅读器模式 阅读主要内容 阅读更多 http support mozilla org en US kb how enable reader mode
  • 适用于 Linux 的轻量级 IDE [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • CakePHP 视图包括其他视图

    我有一个 CakePHP 应用程序 在某些时候会显示带有产品媒体 图片或视频 的视图 我想知道是否有某种方式可以包含另一个威胁视频或威胁图片的视图 具体取决于标志 我想将这些 小视图 用于其他几个目的 所以它应该 像 蛋糕组件一样 以便重用
  • Xdebug V3 不会停止 VSCode 中的断点

    我正在尝试使用 VSCode 在 XAMPP 上进行调试 但没有成功 我知道有很多关于这个的问题 我已经尽了一切努力 但仍然行不通 我的 xdebug 扩展确实有一件奇怪的事情 我目前使用 PHP v7 4 12 和 Xdebug 版本 3
  • PDO PHP 连接,致命错误

    我的连接类 firstcode php class DB functions public db function construct try db new PDO mysql localhost dbname xxx charset ut
  • 将大写 URL 重定向为小写(*** 除外) - htaccess

    我正在尝试将大写 URL 重定向为小写 但有点噩梦 主要是我的 htaccess知识缺乏 目前我有
  • Perl 非贪婪

    我遇到非贪婪正则表达式 regex 的问题 我已经看到有关于非贪婪正则表达式的问题 但它们没有回答我的问题 Problem 我正在尝试匹配 lol 锚点的 href Note 我知道这可以通过 Perl HTML 解析模块来完成 我的问题是

随机推荐

  • Angular Material - MdInput 到 MatInputModule?

    我正在使用什么 Angular 角度材质 2 0 0 beta 12 我在做什么 我刚刚开始一个新项目并安装了材料 从以前的项目复制一些语法时 尝试导入时出现错误 从 angular material 导入 MdInputModule 深入
  • 如何更新另一个更新面板中的控件?

    我在层次结构中有三个更新面板 UpdatePanel1 Root UpdatePanelChild1 UpdatePanelChild2 我可以在 updatePanel2 发生事件时更新 updatePanel1 中的控件吗 我不太喜欢每
  • 如何将数组中的值添加到其前后的值

    我试图将数字数组转换为非零整数元素值的步骤 即 spread 0 0 n 0 0 returns gt 0 n 2 0 n 1 n 0 n 1 0 n 2 spread 0 0 0 n 0 2 returns gt 0 n 3 0 n 2
  • 针对性能不佳的 Lint 警告 - 80+ 次观看

    我收到此 lint 警告错误 highscores xml has more than 80 views bad for performance 这是我的高分表 有 15 行 3 列 这是我的应用程序的 Lite 版本 我的付费版本将容纳
  • 启动错误:java.lang.InknownClassChangeError:org/apache/struts2/convention/DefaultClassFinder$InfoBuildingVisitor

    我有一个 Struts2 应用程序 最初是基于 XML 的 但现在我第一次引入了基于注释的操作 并且该应用程序在启动时崩溃了 鉴于以下操作映射 在应用程序启动时 我收到错误 java lang InstantiationError com
  • python 字典 keyError

    python 新手 看起来像是简单可行的代码片段KeyError patt list jkasb dict for i in patt dict i 1 if dict i is None else dict i 1 This line t
  • 没有 StreamReader 构造函数接受字符串

    我正在将 NET 4 6 1 控制台应用程序移植到 NET Core 我安装了 NETStandard Library 1 6 但它不允许我将文件路径字符串传递到 StreamReader 构造函数中 查看定义确认它不可用 它去哪儿了 这是
  • 在Python中使用静态地址和偏移量从进程读取内存地址

    我正在尝试在 Python 中读取另一个进程的内存 并且我有程序的静态地址和所有偏移量 我正在使用win32api去做这个 我已经可以使用没有偏移量的地址读取进程的内存 但我不知道如何使用偏移量 我已经尝试过该脚本这个答案但它返回 1 我已
  • 使用 python 和 numpy 进行二维卷积

    我正在尝试使用 numpy 在 python 中执行二维卷积 我有一个二维数组 如下所示 内核 H r 代表行 H c 代表列 data np zeros nr nc dtype np float32 fill array with som
  • 如何在foreach迭代中修改多维数组的子元素

    我试图修改多维数组的每个数组元素中第一个子元素的内容 但是 如果我通过引用传递所述元素 则会收到错误消息 不是预期的 我是否需要放弃 foreach arr as list 语法并恢复到标准 for 循环并使用计数器变量进行访问 forea
  • 谷歌街景标题问题

    我正在从事一个项目 我需要显示走向道路的谷歌地图街景 我为全景对象设置了标题 0 但对于不同的位置 它显示的标题不同 例如 在某些情况下 它显示前往街道 而对于某些位置 它显示前往家 panorama theMap getStreetVie
  • 协助UI Dispatcher处理大量的方法调用

    以下帖子已成为bit 比预期更长 我对此表示歉意 但也许你会发现阅读起来很有趣 也许你有一个想法可以帮助我 我正在开发一个小型应用程序 其 GUI 由许多列表控件组成 每个列表控件都有一个thread与之相关的是永久生产正在添加到列表中的字
  • Android:SlidingDrawer的高度可以用wrap_content设置吗?

    我正在尝试实施一个SlidingDrawer将占据整个屏幕宽度 但其高度由其内容动态确定 换句话说 标准fill parent宽度和布局行为wrap content对于高度 这正是我在布局 XML 中指定的方式 见下文 但滑动抽屉始终打开到
  • 无法在 VBA (Excel) 中迭代哈希表

    我正在使用哈希表 引用 mscorlib dll 我用数据填充它 我可以获取任何项目 只要我将请求类型转换为与哈希表中存储的类型完全相同的类型 ContainsValue Key 所有这些都有效 但我无法通过 For Each 循环迭代它
  • 使用 Cython 将 malloc 缓冲区从 C 转换为 Python,而不进行复制?

    在 Cython 中 假设我有一个 C 函数 它返回一个使用 malloc 分配的大缓冲区 并预计稍后使用 free 释放 现在我需要将此缓冲区作为 字节 str 对象传递给 Python 它将获得它的所有权 并在 str 对象消失时调用
  • 检查字符串数组中的整数

    我正在尝试检查字符串数组是否存在转换后的整数 这位于一个过程中 其中 nc ecosite is an integer多变的 current consite是一个字符串数组 ecosite is an integer current eco
  • 如何用java模拟真实的鼠标点击?

    我正在尝试在 Java 中执行鼠标单击 以单击外部程序中的某些内容 为此 我正在使用java awt robot 以及以下代码 Robot bot new Robot int mask InputEvent MOUSE BUTTON1 DO
  • Delphi Android - 检测设备方向变化

    Delphi Android 开发新手 如何检测屏幕方向已更改 即从肖像到风景 反之亦然 发生这种情况时如何触发代码 例如 我有一个图像尺寸为 300x200 在纵向模式下 但当设备切换到横向时 我希望它调整并占据全屏宽度 在你的表单中实现
  • 如何降低 RealityKit 中阴影的不透明度?

    我在 Reality Composer 中构建了一个场景 并在其中添加了 3 个对象 问题是阴影太强烈 黑暗 我尝试使用 RealityKit 中的定向光this答案而不是 Reality Composer 中的默认灯光 因为您没有调整其中
  • 将所有链接与特定文本匹配

    我正在寻找 PHP 中的正则表达式 它将锚点与其上的特定文本相匹配 例如 我想获得带有文本 mylink 的锚点 例如 a href blabla mylink a 所以它应该匹配所有锚点 但前提是它们包含特定文本所以它应该匹配这些字符串