在文本、PHP和MYSQL之间替换较大正文中的文本

在文本、PHP和MYSQL之间替换较大正文中的文本,php,mysql,preg-replace,substr,Php,Mysql,Preg Replace,Substr,我已经拼凑了足够多的代码来查找和替换更大文本体中特定短语之间的文本,但是我只想替换那个文本。下面的代码将找到它并替换整个很长的字符串,而不是我想要定位的部分。例如,如果想在苏茜的中间改变错误的标签=BLAH BLAH,就把她的自行车骑在街上,错误的TAG=BLAH BLAH BLAH,等于苏茜骑着她的自行车沿街走。 $text = mysqli_query($conn, "Select body from ReplaceTest"); $imageId = 'new tag = 7876543

我已经拼凑了足够多的代码来查找和替换更大文本体中特定短语之间的文本,但是我只想替换那个文本。下面的代码将找到它并替换整个很长的字符串,而不是我想要定位的部分。例如,如果想在苏茜的中间改变错误的标签=BLAH BLAH,就把她的自行车骑在街上,错误的TAG=BLAH BLAH BLAH,等于苏茜骑着她的自行车沿街走。
$text = mysqli_query($conn, "Select body from ReplaceTest");

$imageId = 'new tag = 787654323';

$search = "/[^$wrongTag](.*)[^<\/]/";
$replace = "$id";
$string = "<wrongTag:id=\" blah blah blah />";


 $newText = preg_replace($search,$replace,$string);

 $update = mysqli_query($conn, "UPDATE T1
 SET body = '$newText'");
尝试一下:

$newText = preg_replace('/<$wrongTag([^>]+)/', "<$rigthtag$1", $string);

这是一个正则表达式问题。与PHP或MySQL无关。不过,目前尚不清楚regex$搜索应该如何编写。你能给出更多的例子和预期的结果吗?一个很长的段落,包含要替换的短语,总是以BAD TAG=开头,以>结尾,由查询的变量和字符串组合替换。它可以在长段落的任何地方。它在一个表上,我必须根据被替换标记的内容进行替换。警告:使用mysqli时,您应该使用参数化查询,并将用户数据添加到查询中。不要使用字符串插值来完成此操作,因为您将创建严重错误。此外,没有where子句的更新可能会导致令人不快的意外情况。目前,仅尝试在具有一行的测试表上计算逻辑-这就是为什么没有where子句。这与我的其他选项相同。。。仅用字符串替换替换了整个查询字段正文:/@用户1827601:对不起,我不明白你的意思。你能用一些输入字符串和预期结果编辑你的问题吗?