如何在字符串中搜索带有变量的子字符串,并用PHP将其替换为包含该子字符串变量的内容?

用户3931836

假设我有一个字符串:

$text = "This is my string exec001 and this is the rest of the string exec222 and here is even more execSOMEWORD a very long string!"

我想替换每次出现的“ exec?” 在字符串中包含一些新文本,同时我想将“ exec”之后的文本存储在单独的变量中,以便在替换文本时可以使用它。

例如,说我要替换每次出现的exec ???与<html> ??? </ html> <div> ??? </ div>在一起,因此生成的字符串为:

$text2 = "This is my string <html>001</html><div>001</div> and this is the rest of the string <html>222</html><div>222</div> and here is even more <html>SOMEWORD</html><div>SOMEWORD</div> a very long string!"

如何在PHP中做到这一点?

首先十分感谢。

这是使用preg_replace的一种方法

$text = "This is my string exec001 and this is the rest of the string exec222 and here is even more execSOMEWORD a very long string!";
$text2 = preg_replace('/\bexec(\S+)/', "<html>$1</html><div>$1</div>", $text);
echo $text2,"\n";

这将替换所有出现的execwhatever
\S+代表任何非空格字符。
\b是单词边界。

您可以在此处找到更多信息

输出:

This is my string <html>001</html><div>001</div> and this is the rest of the string <html>222</html><div>222</div> and here is even more <html>SOMEWORD</html><div>SOMEWORD</div> a very long string!

根据评论更新

如果要替换多个字符串,请执行以下操作:

$text2 = preg_replace('/\bexec([^:\s]+):([^:\s]+)/', "<html>$1</html><div>$2</div>", $text);

其中[^:\s]表示非分号或空格的任何字符

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何从变量替换子字符串?

如何从字符串中获取特定的子字符串并将其替换为python中的新内容

如何在带有子字符串的文件中搜索包含反斜杠和\ n

如何在字符串中查找子字符串(或如何grep变量)?

如何替换字符串中的子字符串?

如何在带有子字符串的字符串中获得多次出现?

如何在PHP中检测包含mysql_query字符串的字符串变量?

用 Python 中的字符串替换包含子字符串的字符串

如果字符串包含子字符串,则获取该子字符串

搜索字符串是否包含sql中的所有子字符串

在带有特殊字符的字符串中查找子字符串PHP

在字符串数组中查找包含子字符串的所有字符串

将子字符串字符从字符串值转换为 int,然后将其分配给 int 变量

在pandas df中提取带有子字符串的行,该子字符串包含空格

如何在Swift 4中搜索字符串中的子字符串?

如何在多个文件中搜索特定字符串,并返回包含该字符串的所有文件的名称?

如何在列表中搜索字符串并输出包含该字符串的所有值?

XQuery对带有子字符串的字符串

从Haskell中的字符串替换子字符串

替换字符串中的子字符串

无法替换字符串中的子字符串

替换匹配字符串中的子字符串

如何在java中的字符串(由#,$ ..等特殊字符组成)之间替换所有出现的字符串(变量)

命令替换特定的子字符串并将其转换为字符串

如何从变量的字符串值中捕获特定的子字符串?(cmd或批处理)

如何使用模式在字符串变量中查找子字符串?

如何在div的子级中搜索字符串

除了一组子字符串之外,如何替换字符串中的所有内容?

如何在LOGO中执行子字符串替换?