仅查找和替换完整术语php preg_替换
我试图搜索并替换为字符串, 我有两个问题 1.我需要检查term是否在标签“term”中,在这种情况下什么也不做。 2.我需要确保我正在替换一个complte单词,而不是剪切该单词:仅查找和替换完整术语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
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。是否可以使用正则表达式:是。在这种情况下应该使用它吗?我们不知道,因为我们没有任何输入数据。与其匆忙做出判断,不如等待澄清。