仅查找和替换完整术语php preg_替换

仅查找和替换完整术语php preg_替换,php,Php,我试图搜索并替换为字符串, 我有两个问题 1.我需要检查term是否在标签“term”中,在这种情况下什么也不做。 2.我需要确保我正在替换一个complte单词,而不是剪切该单词: function str_replace_first($from, $to, $content) { $from = '/'.preg_quote($from, '/').'/'; return preg_replace($from, $to, $content, 1); } 例如: echo

我试图搜索并替换为字符串, 我有两个问题 1.我需要检查term是否在标签“term”中,在这种情况下什么也不做。 2.我需要确保我正在替换一个complte单词,而不是剪切该单词:

function str_replace_first($from, $to, $content)
{
    $from = '/'.preg_quote($from, '/').'/';

    return preg_replace($from, $to, $content, 1);
}
例如:

echo str_replace_first('good','bad','goodmorning'); 
结果:badmorning//如果我们剪切一个单词,我需要脚本不替换,如果我们更改整个单词,则需要脚本替换 谢谢

我需要的脚本不替换,如果我们正在削减一个字,并做替换,如果我们正在改变一个完整的字

幸运的是,正则表达式语法以
\b
单词边界标记的形式正好满足您的需要。只需将其添加到您想要匹配的单词的任意一端,如下所示:

function str_replace_first($from, $to, $content)
{
    $from = '/\b'.preg_quote($from, '/').'\b/';

    return preg_replace($from, $to, $content, 1);
}

现在,
goodmorning
中的“good”将不会被替换,但是
goodmorning
将被替换。

'/^。preg_quote($from,'/')。$/'
@Nimer我们能得到一些示例数据和预期结果吗?请编辑/改进您的问题。@Abracadver那是什么?[静静地希望我能否决@Nikos不真实评论]@NikosM。是否可以使用正则表达式:是。在这种情况下应该使用它吗?我们不知道,因为我们没有任何输入数据。与其匆忙做出判断,不如等待澄清。