首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

如何来对字符串进行替换

2012-03-16 
怎么来对字符串进行替换?$a1234683214312354436214214125436121436$b76234265832465867892353463476

怎么来对字符串进行替换?
$a="1234683214312354436214214125436121436";
$b="76234265832465867892353463476254273434252";

求把$a中的最中间的那个1替换成'@'; 比如有11个1 把第6个替换掉
同样求把$b中最中间那个2替换成'@'; 比如有8个2 把第4个替换掉

[解决办法]
利用preg_match_all + PREG_OFFSET_CAPTURE就可以匹配到你想替换的东西,以及匹配的东西的偏移量,接下来怎么做你你懂的。
<?php
$a="1234683214312354436214214125436121436";
$b="76234265832465867892353463476254273434252";
preg_match_all('#1#',$a,$match,PREG_OFFSET_CAPTURE);
echo "<pre/>";
print_r($match);
?>
[解决办法]

探讨

引用:
不出现两次报错的问题我修正了


PHP code

function fool($str, $number, $change)
{

$array = str_split($str);
if (in_array($number, $array)) {
$key = array_keys($array, $number);
$……

热点排行