问题标签 [preg-replace]

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 投票
4 回答
20464 浏览

php - 在 PHP 中使用 preg_replace 时如何获得匹配项?

我试图抓住几个单词的大写字母并将它们包装在跨度标签中。我将preg_replace用于提取和包装目的,但它没有输出任何内容。

0 投票
5 回答
10970 浏览

c# - C# preg_replace?

C# 中的 PHP preg_replace 是什么?

我有一个字符串数组,我想用另一个字符串数组替换它。这是 PHP 中的一个示例。在不使用 .Replace("old","new") 的情况下,如何在 C# 中执行类似的操作。

0 投票
2 回答
12299 浏览

php - 在 PHP 中使用正则表达式替换空格

我对正则表达式很陌生。我需要替换一段多行文本中的空格。替换规则如下:

  • 用不间断空格 (  ) 替换行首的所有空格。
  • 用相同数量的不间断空格替换任何重复空格(多个空格一起)的实例。
  • 不在行首的单个空格保持不变。

我使用Regex Coach构建匹配模式:

假设我有这个输入文本:

使用 PHP 正则表达式替换函数(如preg_replace()),我想得到这个输出:

我很高兴使用正则表达式进行简单的文本替换,但我无法弄清楚如何在匹配中多次替换以获得我想要的输出。

0 投票
1 回答
3179 浏览

regex - 正则表达式匹配每个文件和每行多次出现

第一次发帖,就这样吧。我正在编写一个在文件树上进行智能搜索和替换的脚本。本质上,脚本将每个文件的内容放入缓冲区字符串中,并与预定义的模式进行匹配,在这种情况下,模式是/^[^\r\n]*(vendor)[^\r\n]*$/im. 该模式应该找到任何不区分大小写的“供应商”形式,并给我匹配的整行。我需要查看整行以确定是否替换该事件。这种模式对于给定文件中出现的任意数量的单独行都表现良好。

但是,如果在给定的行上有多个匹配项,则该模式将仅匹配其中一个匹配项,并跳过其他匹配项。我正在尝试确定是否需要第二个模式来在匹配的行上进行额外的搜索,或者我是否可以使用完成上述所有操作的单个模式来完成此目的。

只是我希望生产的样品。单行多次出现匹配的示例:

热情地彻底改变基于网络的供应商潜力供应商安装了基础电子零售商。

我想输出类似的东西(同样,输出不是这里的问题,我是否可以用一种模式来匹配它):

行中多次出现:|| 热情地彻底改变基于网络的供应商潜力供应商安装了基础电子零售商。||

代替?(y,n,q) || ...有能力的供应商潜力... ||

代替?(y,n,q) || ...联系供应商即时... ||

如果我不清楚我的目标,请告诉我。感谢您对此的任何帮助和回复!

0 投票
4 回答
1383 浏览

php - 正则表达式从 html 标签中去除属性和值

嗨,伙计们,我对正则表达式很陌生,你能帮我解决这个问题吗?

我有一个像这样的字符串"<input attribute='value' >"attribute='value'可以是任何东西,我想做一个preg_replace得到只是<input />

如何指定通配符来替换 srting 中任意数量的任意字符?

像这样?preg_replace("/<input.*>/",$replacement,$string);

非常感谢

0 投票
8 回答
8457 浏览

java - Java 等价于 PHP 的 preg_replace_callback

我正在将应用程序从 PHP 迁移到 Java,并且代码中大量使用了正则表达式。我在 PHP 中遇到了一些似乎没有 java 等价物的东西:

对于正则表达式中的每个匹配,它都会调用一个函数,该函数将匹配文本作为参数传递。作为示例用法:

在 Java 中执行此操作的理想方法是什么?

0 投票
3 回答
451 浏览

php - RegEx:匹配和替换“AB ABC D”中的ABC

我需要关于这个片段的建议

这将匹配“AB ABC D”中的 ABC,并将其替换为“AB fooBbar D”;正如您所看到的,这也与开头的“AB”部分匹配,我必须在替换字符串中用 $1 重复它,以免丢失它。

这是获得这种结果的最佳方式吗?

是否有一个标志 X 使得

产生相同的结果?

我希望我已经清楚了

谢谢!

编辑:将 A、B、C 视为任意字符的原子字符串,它们也可以包含空格

此外,给出的示例实际上是错误的,因为它仅匹配“ABC ABC”中的第二个“ABC”。

EDIT2:对不起,我可能已经非常糟糕地解释了这个问题。关键是我想匹配两个 A,C 字符串之间的任何内容,以便匹配中没有子字符串 A

再次感谢

0 投票
9 回答
39911 浏览

php - 正则表达式去除注释和多行注释和空行

我想解析一个文件,我想使用 php 和 regex 来剥离:

  • 空行或空行
  • 单行注释
  • 多行注释

基本上我想删除任何包含

或多行注释

如果可能,另一个正则表达式来检查该行是否为空(删除空行)

那可能吗?有人可以向我发布一个正则表达式吗?

非常感谢。

0 投票
3 回答
1001 浏览

php - preg_replace_callback() 内存问题

我在测试查找/替换功能时遇到内存问题。

假设搜索主题是:

要找到的字符串:

替换函数回调:

和电话:

现在,从数据库中提取了完整的搜索模式。到目前为止,它是:

然后在 7 个 mysql 表的 23 列中查找此 $find 模式(如果找到则替换)。

使用建议的 preg_replace() 而不是 preg_replace_callback() 似乎已经解决了内存问题,但我遇到了新问题:preg_replace() 返回的主题缺少很多内容......

更新:

内容丢失是由于使用 preg_quote($find,'/'); 它现在可以工作了,除了... 'A+' 在这个过程之后变成了 'A '。

0 投票
5 回答
607 浏览

php - 用 RegExps 替换 PHP 中包含的标签

我需要读取一个字符串,检测一个 {VAR},然后用 file_get_contents('VAR.php') 代替 {VAR}。“VAR”可以命名为任何名称,例如 TEST 或 CONTACT-FORM 等。我不想知道 VAR 是什么——不是要进行硬编码条件,而是只想看到一个大写字母数字标签花括号,只需执行 file_get_contents() 即可加载它。

我知道我需要使用 preg_match 和 preg_replace,但我在这方面的 RegExps 中磕磕绊绊。

这有什么用?它在挂钩 WordPress 时很有用。