问题标签 [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 投票
2 回答
784 浏览

php - php: 为什么 preg_replace_callback 不允许内置 php 函数,只允许匿名用户函数?

这不起作用,并输出一个空字符串:

使用内置函数会很好。事实上,一般回调确实允许按照http://php.net/manual/en/language.types.callable.php内置函数,但不允许 preg_replace_callback。可能是对 php 的功能请求?

0 投票
1 回答
1211 浏览

php - preg_replace_callback 与 PHP 5.2.17

我有这段代码,它在 PHP 5.3 及以后的版本中运行良好,但我需要从 5.2.17 开始运行它,请任何人帮助我。

0 投票
1 回答
548 浏览

php - preg_match 某些部分的评论

我想找到评论的某些部分。以下是一些例子

目前我正在使用以下正则表达式

这将返回以下内容:

我怎样才能只得到@todo 和名字,而不是任何星号?

期望的输出

0 投票
1 回答
65 浏览

php - 包含 {{calendar}} 的字符串,但需要它来调用 calendar.php

我将 HTML 内容存储在具有文本数据类型的 MySQL 字段中,并且我使用 ckeditor 作为 WYSIWYG 编辑器来创建存储在 MySQL 中的 HTML。我正在寻找一种方法让用户放置某种我可以查找并替换为调用包含文件的字符串。例如:

0 投票
1 回答
81 浏览

php - php preg_replace_callback 没用

我尝试从字符串中替换字符并放入其他字符,为此使用 preg_replace_callback 函数,问题是此函数更改原始文本的顺序并显示不同的结果

例如,如果字符串 it´s :

大家好 [1-2-3] 这是一个测试 [4-5-6-7-8] --- > 原文

脚本搜索 [ ] 并用 [ ] 将此内容与其他文本分开,但按我放在这里的方式显示:

1-2-3 4-5-6-7-8 大家好,这是一个测试 --- > 不好的结果

当正确的顺序是第一个没有 [ ]

大家好 1-2-3 这是一个测试 4-5-6-7-8

我创建的脚本:

谢谢大家的帮助

0 投票
2 回答
1236 浏览

php - 多个项目和 preg_replace_callback

我编写了这个脚本,以便能够在我的代码中使用类似 bb-code 的标签。在花了很多时间决定最佳方法并询问如何动态替换 bb 标签?,我决定使用 preg_replace_callback。

但是,同一行上有多个项目存在问题

上面的部分有效,但下面的部分无效。

我知道使用 file_get_contents() 不是推荐选项,但如果我想每行使用多个 Forvo-tags,我是否还应该找到 preg_replace_callback 的另一种解决方案?

0 投票
3 回答
54 浏览

regex - 正则表达式需要帮助

我有一个内容块,其中的人名用双括号括起来。例如:

Lorem ipsum dolor sit amet,consectetur [[Jane Doe]] adipisicing elit,sed do eiusmod tempor incididunt ut labore et dolore magna aliqua。Ut enim ad minim veniam, quis nostrud exercitation ullamco [[John Doe]] laboris nisi ut aliquip ex ea commodo consequat。Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur。Exceptioneur sint occaecat cupidatat non proident, [[Susan Van-Something]] sunt in culpa qui officia deserunt mollit anim id est laborum。

我正在尝试编写一个正则表达式,将名称从双括号中取出,并在内容中使用以下格式的链接替换它们:

<a href='http://www.example.com/jane-doe/'>Jane Doe</a>

在 URL 中,空格被转换为连字符,并且整个名称都是小写的。

到目前为止我有

不幸的是,我怀疑正则表达式有问题。任何帮助,将不胜感激。

0 投票
3 回答
254 浏览

php - preg replace_callback 在帖子中提及和主题标签

假设我有一个文本,

我想分别用这两个锚标签替换 @stackguy 和 @flowguy。这也应该适用于文本字符串中任意数量的@。

我也想用#ilovephp替换

它也应该适用于多个#。我猜它会是这样的

正则表达式会是什么样子?我的函数是要匹配所有需要的还是我需要添加一个 foreach 循环?谢谢。

0 投票
2 回答
194 浏览

php - preg_replace_callback 模式问题

我正在使用以下模式来捕获链接,并将它们转换为 HTML 友好链接。我在 preg_replace_callback 中使用了以下模式,并且在大多数情况下它都有效。

但是当文本如下所示时,这种模式就会失败:

在这一点上,它捕获了 [/b 有趣的是它是链接的一部分,结果如下:

我已经查看了模式,并使用了一些备忘单来尝试了解正在发生的事情,但这让我很困惑。你们中的任何人都可以编码忍者的帮助吗?

0 投票
1 回答
74 浏览

php - preg_replace_callback:正则表达式搜索和替换

使用这种模式,我只能得到 $book ($m[1]):

但我也想获得 $feed ($m[2]),所以我替换为这个 [book=123_456]。

如何在下划线后得到“456”($m[2])?