我做str_replace
的很长string
,我$search
是一个array
。
$search = array(
" tag_name_item ",
" tag_name_item_category "
);
$replace = array(
" tag_name_item{$suffix} ",
" tag_name_item_category{$suffix} "
);
echo str_replace($search, $replace, $my_really_long_string);
$search
我在两者上添加空格的原因$replace
是因为我只想匹配整个单词。正如您从我上面的代码中猜到的那样,如果我删除了空格并且我的真正长字符串是:
...
tag_name_item ...
tag_name_item_category ...
...
然后我会得到类似的东西
...
tag_name_item_sfx ...
tag_name_item_sfx_category ...
...
这是错误的,因为我想要以下结果:
...
tag_name_item_sfx ...
tag_name_item_category_sfx ...
...
那么有什么问题呢?
没什么,它确实有效。但我不喜欢它。看起来很脏,编码不好,效率低下。
我意识到我可以使用修饰符使用正则表达式来做这样的事情,\b
但我不擅长正则表达式,所以我不知道该怎么做preg_replace
。