字符串替换,如何能做到双向替换?
最近要做一个同义词替换的功能,因为是同义词,所以最好是能双向替换,比如“拜会”和“拜见”,在字符串中出现任何一个都要能替换成另一个。
通常用str_replace只能单向替换,不能实现双向替换。
尝试了一下把同义词做成数组再用str_replace替换,结果却不正确。
$find = array("拜会","拜见");
$replace = array("拜见","拜会");
$arr = array("拜会和拜见");
str_replace($find,$replace,$arr);
结果是:拜会和拜会。
问题是怎么样才能使最后的替换结果是“拜见和拜会”?
------解决方案--------------------
改动一下
$find = array("拜会","拜见");
$replace = array("拜见","拜会");
$str = "拜会和拜见";
echo strtr($str, array_combine($find, $replace)); <div class="clear"></div>
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号