问题标签 [preg-replace-callback]

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 回答
97 浏览

php - 对不在方括号内的所有内容运行回调 (BBCodes)

只是缝合了一个小回调来突出显示我所有的 BBCode。花了我很多时间,因为正则表达式对我来说仍然是一个巨大的痛苦。

但是现在我真的很想做相反的事情:) 什么是正则表达式来突出显示除 BBCodes 之外的所有内容?

0 投票
2 回答
208 浏览

php - 正则表达式 - 引用搜索中的第一个匹配项

我不太清楚如何用简短的标题来描述我的问题,所以如果这个问题的标题有点误导,我很抱歉。但我真的不知道我要找的东西叫什么,或者它是否可能。

我正在尝试使用正则表达式来查找 HTML 中一组匹配标签之间的所有内容。当我使用静态标签进行测试时,这对我来说很容易,因为我可以搜索两段文本之间的所有内容,例如\{myTag\}(someExpression)\{\/myTag\}

我的问题在于“myTag”可以是任何东西。当文本是可变的时,我只是不知道如何(或者甚至可能)将起始标签与结束标签匹配。

我想我之前在正则表达式中看到过某种引用系统,您可以在其中使用美元符号和数字,但我不知道您是否可以在搜索本身中使用它。

我最初认为也许我可以写一些类似的东西:\{(.*?)\}(someExpression)\{\/${1}\}但我不知道这是否真的有效或者是否可能(更不用说它是否正确)。

我希望这个问题是有道理的,因为我不确定如何问它。主要是因为就像我说的那样,我不知道这是否有名字,是否可能,而且我也是常规运动的初学者。

如果它有什么不同的话,我正在做的语言是在 PHP 中的preg_replace_callback函数。

任何帮助将不胜感激。

0 投票
1 回答
125 浏览

php - Preg 回调问题

伟大的伙伴......我需要你的帮助......请让我知道为什么这段代码没有进入回调函数......

0 投票
2 回答
4577 浏览

php - preg_replace 一次替换多个模式

我的 $subject 几乎没有要应用的替换,但我不想让旧替换 #(1 .. i-1) 的输出与当前替换 #i 匹配。

我尝试使用带有数组的preg_replace来进行模式和替换,希望它能够立即完成;但事实证明,它只不过是连续调用简单的preg_replace(当然还有一些优化)

在我阅读了preg_replace_callback之后,我想这不是一个解决方案。

有什么帮助吗?

0 投票
1 回答
139 浏览

php - 需要帮助理解 create_function() 和正则表达式

在搜索了 SO 和其他论坛也绊倒了各种 php 函数文档之后,我尝试编辑我在这里找到的一个函数(将 URL 转换为可点击的链接),这样它也可以处理嵌入式视频,不幸的是我的技能组合很差,而且我相信我不完全理解create_function()要在这方面取得成功。

所以这是我的炒鸡蛋代码:

我还应该提一下,我不是在找人来向我展示正确的代码,而是在找人向我解释为什么我的代码不起作用以及我做错了什么。感谢您的时间 :)

0 投票
1 回答
981 浏览

php - 正则表达式:使用 preg_replace_callback 忽略 HTML 标签

我正在尝试获取 HTML 标签之间的所有文本(如果有),并在其上放置一个函数.. 我的意思是.. 我现在的代码是

现在我想要的是:

  1. 如果有 HTML 标签 === 返回 HTML 标签 + strtolower(用于标签之间的文本)。

  2. 如果没有 HTML 标签 === 返回 strtolower(所有文本)


示例:如果我们有:

返回


但如果使用 HTML 标签

返回

0 投票
4 回答
5218 浏览

php - Preg_replace 或 preg_replace_callback?

我在一些使用旧系统的页面上有链接,例如:

它们需要转换为新系统,例如:

我可以使用 preg_replace t0 更改一些我需要的内容,但我还需要用 + 替换查询中的下划线。我目前的代码是:

我想要做的是在 $2 变量上运行 str_replace,所以我尝试使用 preg_replace_callback,但永远无法让它工作。我应该怎么办?

0 投票
1 回答
331 浏览

php - 更改 preg_replace_callback 中的替换值

如果找到匹配项,replaceContent() 中的 $matches 将返回此数组:

目前我的 preg_replace_callback 函数将匹配值替换为 $matches[0]。我正在尝试做的事情并想知道是否有可能替换标签 ($matches[2]) 中的所有内容,同时能够进行 $matches[1] 检查。

在这里测试我的正则表达式:http ://rubular.com/r/k094nulVd5

0 投票
1 回答
206 浏览

php - preg_replace_callback 函数的正则表达式修复

细绳 :

PREG_REPLACE_CALLBACK 代码(PHP):

输出($匹配):

要求:代替{$string this string will output default |ucfirst|strtoupper},我想使用{$string this string will output default ucfirst|strtoupper}(注意:前面的管道符号ucfirst已删除);

重要提示:输出(即 $matches 数组)应该与上面打印的相同。

非常感谢您的帮助,感谢您的阅读。

0 投票
1 回答
732 浏览

php - preg_replace_callback 不工作,函数不工作

我正在使用类似下面的东西,但函数 replace_callback 根本没有执行

字符串 $body 如下所示:

我的错在哪里

不起作用: