所以这是一个与preg_replace相关的问题,我想,
我有一个包含多个重复模式的字符串
他们都形成了:
some string :22: more text :12: etc
如何用一些不同的char替换它们周围的“:”?
答案 0 :(得分:1)
您可以这样做:
$string = 'some string :22: more text :12: etc';
$regex = '/:(\d+):/';
$newString = preg_replace($regex, "@$1@", $string);
注意:你必须用你想要的字符替换第二个参数中的'@'(在数字前后也有不同的字符)。
答案 1 :(得分:0)
编辑:误解了原始问题。但是,仍然是一个灵活的选择:
$result = str_replace(":22:", "tag", "some string :22: more text :12: etc");
$result = str_replace(":12:", "other_tag", $result);
更换?带有替换角色的角色。
答案 2 :(得分:0)
数字_
周围的:
:
preg_replace('/:(\d+):/', '_$1_', 'some string :22: more text :12: etc');