问题标签 [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.
php - 具有多个正则表达式的 PHP preg_replace_callback
大家好,我在 php 上有以下代码
现在我想添加以下内容:
假设我想让用户选择是否要将目录添加到画廊,所以我这样做:
所以用户有药水要做:{gallery: 'folder'}
或{gallery: 'folder' dir: '1'}
我将如何根据正则表达式执行此操作,以便即使目录选项不存在也会进行替换?提前致谢!
php - PHP preg_replace_callback 适用于 5.3 但不适用于 5.2.17
我有以下代码:
问题是这适用于我的本地主机(PHP5.3)但是当我将它上传到我的服务器(5.2.17)时它没有..任何想法为什么?似乎与单引号有关"#\{gallery: '(.+?)'(?: dir: ([0-1]))?\}#i"
php - PHP:preg_replace_callback 改变结果的顺序
我有以下代码
我的问题是,如果我的字符串看起来像这样:
当它被渲染时,它看起来像这样:
为什么要更改顺序并将替换的代码放在顶部,而将其他所有内容放在底部,甚至是中间的东西?
php - preg_replace_callback 与数组模式和替换
我有一个函数,它使用preg_replace()
模式和替换是数组的地方。我需要一个计数器来跟踪替换,所以我将函数转换为preg_replace_callback
与闭包一起使用,但我似乎无法找到一种方法来区分传递给回调匹配的匹配模式。有没有办法使用 preg_replace_callback 进行数组 => 数组替换?
理想情况下,这是我想要工作的,但显然它不会因为 $pattern 和 $replace 在调用中被评估,而不是在每次替换之间
php - PHP:在某些地方运行函数(preg_callback?)
只要有 [%xxx%] (如果愿意,可以充当占位符),我都会尝试运行一个函数,例如:
我几乎是一个 PHP 初学者,但我设法破解了我的头脑并想出了以下内容(对我来说是的 - 我不知何故设法理解了正则表达式的基础知识!):
我尝试使用e修饰符,我尝试使用 preg_replace_callback,这一切都有些工作 - 但我不需要在回显 $maintext 变量之前运行该函数。
对这些人有帮助吗?
编辑 正则表达式不是问题 - 工作正常。只有当我回显 $maintext 时,我才需要弄清楚如何运行该函数... preg_replace_callback 立即运行该函数...
php - preg_replace_callback 匹配 HTML 段落中的 URL
我正在尝试获取单个 HTML 段落中的 URL,并使用 PHP 的preg_replace_callback
. 现在,WordPress 通过以下方式做到这一点:
但这与它自己的行上的 URL 匹配——它周围没有 HTML。我需要做的是匹配这样的 URL:
我不关心段落标记之前或之后的空格,我要做的就是提取该 URL 以将其替换为更详细的信息preg_replace_callback
。
有什么帮助吗?
更新: 好的,我有一个帖子的文字,里面有很多这样的段落:
从该文本中,我只想提取段落中的http://youtube.com/。我看到另一段中有一个 Google.com 链接,但我不希望这样。我想要的只是他们自己段落中的链接(或链接)。它会作为参数传递给我的回调“http://youtube.com/”。
python - python的re.sub是否将数组作为输入参数?
根据http://www.php2python.com/wiki/function.preg-replace-callback/ re.sub 是 PHP 的 preg_replace_callback 的 python 等价物,但是 php 版本需要一个数组来匹配要匹配的字符串,所以你可以传递多个字符串,但 re.sub 似乎只接受一个字符串。
这是对的还是我对python的了解不足?
php - PHP preg_replace_callback() 和 create_function() 与 eval() 不起作用
我正在尝试在 Internet 上部署我的网站,以便在真实环境中对其进行测试。它是某种文本编辑器,用户可以在其中使用正则表达式和用户定义的回调函数。
我对 preg_replace_callback() 函数有一些问题。我的主机的 PHP 版本早于 5.3,我不能在我的代码中使用匿名函数(我在 localhost 有 PHP 5.4)。所以我必须重写这部分代码(在本地主机上正常工作)
在这一点上,我不是在谈论使用 eval() 的危险——这个问题稍后会得到适当的注意(“禁止”单词列表检查等)。问题是我在下面的尝试
不起作用,也不会发生错误。我的代码有什么问题?
任何帮助将非常感激。
新信息。我试过这个
并发现 create_function() 中的 $replacement 是空的。但是当我在类之外使用相同的 create_function() 时,$replacement 不为空:
php - php domdocument loadHTML 跳过错误,或正则表达式解决方案
今天早些时候,我问了一个关于使用正则表达式解决方案来用 return fo 某个函数替换 html 中所有链接的 href 的问题。
然后我删除了它,因为我似乎可以使用 DomDocument 解决它,但事实证明,我不能......
看到我的 html 有很多错误的 html 语法、html5 代码等等等。所以 loadHTML 和 loadXML 都不起作用。
请如果有人可以使用正则表达式提供解决方案来查找href并使用调用所有函数来替换..我已经尝试过preg_replace和preg_replace_callback,但我无法理解$ 1,$ 2 ..整个概念..我'我搜索了所有类似的问题,但他们都有 DomDocumenet 的答案,我无法使用..
旧的类似问题: 抓取 A 元素的 href 属性
查找页面中的所有href并替换为维护先前链接的链接 - PHP
但我需要正则表达式解决方案
php - preg_replace_callback:将替换回调作为变量传入不起作用
这不起作用
这有效
为什么,以及如何使它与存储在 var 中的函数一起工作?:)