【问题标题】:replace unknown characters between two known characters in php [duplicate]替换php中两个已知字符之间的未知字符[重复]
【发布时间】:2018-02-04 07:47:38
【问题描述】:

我有以下几点:

$string="rgb(Unknown characters) some text rgb(Unknown characters)";

我想用一些替换来替换文本Unknown characters。我试过这个:

echo str_replace("Unknown characters","some replace characters",$string);

这适用于精确的文本匹配,但我不知道括号内的内容。

我希望输出是

rgb(some replace characters) some text rgb(some replace characters)

请帮帮我。

【问题讨论】:

  • 什么是$echo ???!!!它必须是echo 我认为问题只是$echo,您的代码正在运行3v4l.org/NHdWU
  • rgb(一些替换字符)一些文本rgb(一些替换字符)最终输出
  • 我不知道字符串中的未知字符
  • 您能否在您的问题中确认您需要替换括号 () 内的任何文本

标签: php arrays string preg-replace preg-match


【解决方案1】:

preg_replace 与正则表达式一起使用:

$string="rgb(Unkown characters) some text rgb(Unkown characters)";
echo preg_replace("/\([^)]+\)/","(some replace characters)",$string);

输出:

rgb(some replace characters) some text rgb(some replace characters)

正则表达式:

/         : regex delimiter
  \(      : open parenthesis
  [^)]+   : 1 or more any character that is not close parenthesis
  \)      : close parenthesis
/         : regex delimiter

【讨论】:

  • 对所使用的正则表达式进行更多解释会很有用,因为 OP 之前显然没有使用过它们
  • @BanothShiva:请随意将答案标记为已接受,请参阅:stackoverflow.com/help/someone-answers
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-25
  • 2020-12-29
  • 1970-01-01
  • 2014-03-30
  • 1970-01-01
相关资源
最近更新 更多