Jim*_*Bob 4 php string replace
我想用一个特定的单词替换多个同义词.
<?p
$a = array(
'truck',
'vehicle',
'seddan',
'coupe',
'Toyota',
);
$b = array(
'car',
'car',
'car',
'car',
'Lexus',
);
$str = '
Honda is a truck.
Toyota is a vehicle.
Nissan is a sedan.
Scion is a coupe.
';
echo str_replace($a,$b,$str);
?>
Run Code Online (Sandbox Code Playgroud)
结果:本田是一辆汽车.雷克萨斯是一辆车.日产是一辆车.Scion是一辆汽车.
有人能给我一个干净的方法,用"汽车"这个词取代"车辆,卡车,轿跑车,轿车"而不是我单独更换所有4个.谢谢.
$a = array( 'truck', 'vehicle', 'seddan', 'coupe' );
$str = 'Honda is a truck. Toyota is a vehicle. Nissan is a sedan. Scion is a coupe.';
echo str_replace($a,'car',str_replace('Lexus','Toyota',$str));
Run Code Online (Sandbox Code Playgroud)
你应该使用strtr
echo strtr($str,array_combine($a,$b));
Run Code Online (Sandbox Code Playgroud)
或者只是将$a和组合$b成一个数组
$ab = array('truck' => 'car','vehicle' => 'car','sedan' => 'var','coupe' => 'var','Toyota' => 'Lexus');
echo strtr($str, $ab);
Run Code Online (Sandbox Code Playgroud)
输出
Honda is a car.
Lexus is a car.
Nissan is a car.
Scion is a car.
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15548 次 |
| 最近记录: |