问题标签 [preg-match-all]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
388 浏览

regex - 使用 preg_match 查找具有特定后缀的标签

我正在寻找在 PHP 中使用正则表达式以特定方式结束的标签。然而,我所有的尝试要么导致太多,要么太少。

例如,在以下字符串中,我想匹配“bar”,因为它位于以“suffix”结尾的标签中。

但是上面的行导致'foo>

0 投票
1 回答
222 浏览

php - php preg_match_all,正则表达式,提取特定值

我正在尝试提取在分类广告网站( http://trademe.co.nz/Trade-Me-Motors/Cars/Toyota/Hiace/auction-300294634.htm)上提问的用户。由于某些原因,我使用的模式并不总是有效,所以如果你能帮助我使用完美的正则表达式,我将不胜感激这是我当前的代码

由于模式中的 html 标记,代码似乎无法正确显示,因此您可以在此处查看http://pastebin.com/iPxizy5X

0 投票
1 回答
126 浏览

php - preg_match 表达式帮助

似乎无法弄清楚这一点。只是尝试在链接 URL 中匹配特定变量名称:

如何从中获取变量=名称?

谢谢!

0 投票
2 回答
108 浏览

php - 为什么 preg_match_all 在这么多字符后会弹出?

我的 preg_match_all 语句有问题。它一直在完美地工作,因为我一直在输入一篇文章,但是在它经过一定长度后突然停止工作。这是功能的一个已知问题,在这么多字符之后它什么都不做?

它一直运行良好,并且在其他页面上运行良好,但是一旦那篇文章超过了一定的长度,噗,它就停止为那篇文章工作了。我可以使用另一种解决方案来使其适用于更长的文本块吗?正在处理的文章长度约为 33,000 个字符(包括空格)。

我以前问过这样的问题,但只得到一个我从未实际测试过的答案。上一次我刚刚找到了另一种方法来解决那个特定的场景,但是这次没有办法解决它,因为它都是一篇文章。我尝试更改pcre.backtrack_limit甚至pcre.recursion_limit高达 500,000,但完全没有效果。关于为什么会发生这种情况以及我可以做些什么来让它继续工作,即使对于这些大量的文本块,还有其他想法吗?30,000 个字符的限制似乎有点低,只有 5,000-6,000 个字(这个大约是 5,700 个)。在这里将其分开并不是一个真正的选择,因为如果它们位于两个单独的文本块中,它将找不到开始和停止。

0 投票
2 回答
787 浏览

php - preg_match_all:为什么“this”匹配而“that”不匹配?

所以,我基本上是在尝试匹配对象标签内(包括)的任何内容,如下所示:

它为此找到匹配项:

但它不会匹配这个:

知道为什么吗?感谢您的任何见解。


ETA:由于我的方法一开始可能有问题,这里有一些关于我正在尝试做的事情的背景。

这是一个 Wordpress 网站。我正在使用一个将短标签转换为完整视频嵌入代码的插件。该插件最近(谢天谢地)更新以使代码更有效。

我正在尝试创建的功能只是在帖子中找到第一个视频对象,然后将其抓取以在网站的其他地方使用。

这是整个函数(其中一些只有在您使用过 Wordpress 时才有意义):

0 投票
1 回答
890 浏览

php - 正则表达式 - 在特定标签中抓取特定单词

我不认为自己是 PHP “菜鸟”,但正则表达式对我来说仍然是新的。

我正在做一个 CURL,我在其中收到评论列表。每条评论都有这个 HTML 结构:

我想要的很简单:我想从 preg_match_all 中获取在这个特定的 DIV 标记中包含“cool”一词的评论。

到目前为止我所拥有的:

可悲的是,这不起作用。但是,如果 REGEX 是简单的#\bcool\b#Uis,它将起作用。但我真的很想在这些标签中捕捉到“酷”这个词。

我知道我可以做 2 个正则表达式(一个获取所有评论,另一个过滤每个评论以捕获“酷”这个词),但我想知道如何在一个 preg_match_all 中做到这一点?

我认为我离解决方案不远,但不知何故我找不到它。肯定少了点什么。

感谢您的时间。

0 投票
2 回答
193 浏览

php - 如何从 txt doc 中提取多个模式

我有一个文本文档,其中列出了带有主题和电子邮件地址的 url。我需要提取所有带有主题和电子邮件地址的 url,并将其全部放入 csv 文件中。我只需要知道如何使用正则表达式来做到这一点。目前我能够提取所有网址,但我需要与它们关联的电子邮件和主题。到目前为止,这是我正在使用的:

文件结构:

主题:网址

电子邮件:someemail@email.com

来源网址:http ://www.google.com

0 投票
2 回答
543 浏览

php - 将正则表达式模式分配为数组的键

我有一个正则表达式数组,并试图遍历文本文档以找到第一个模式,将其指定为数组的键,然后继续查找第二个模式并将其指定为值。每当我遇到模式 1 时,我希望始终将其分配为键,并且在遇到新键之前,所有模式 2 匹配项都将作为值分配给第一个键。

文本文档结构:

所以我有一个表达式数组:

我想遍历我的文本文档并匹配电子邮件地址,然后将其分配为数组的键,然后将后面的所有 url 分配为值,上述文本的输出将是:

0 投票
3 回答
3270 浏览

php - 正则表达式锚标记

我正在使用 php,我在解析带有文本的锚标记中的 href 时遇到问题。

示例:具有测试的锚标记http://www.test.com

像这样<a href="http://www.test.com" title="test">http://www.test.com</a>

我想匹配锚标记中的所有文本

提前致谢。

0 投票
4 回答
3055 浏览

php - 在我想要实际匹配的内容之后停止匹配 *everything* 的正则表达式!

我对整个正则表达式很陌生,并尝试preg_match_all在 PHP 中做一个,这是我想要的结果,但问题是它匹配我真正想要的所有内容......就像这样:

字符串:来自正则表达式的匹配:This is something <code>Some code here</code> and more 来自正则表达式的<code>Some code here</code> and more 想要匹配:<code>Some code here</code>

这是我正在使用的正则表达式: /<code>(.*)<\/code>/

我认为它与开始和结束/分隔符有关,但我不完全确定。

任何帮助将不胜感激,谢谢!