我对正则不太了解,正则对字符串的处理非常广泛,什么都能做。 在某些情况下,一个小功能就可以处理很多字符串。 道(是通配符的基本正则表达式。 由于对正则表达式不熟悉,经常需要使用类似通配符的处理字符串,因此可以使用函数tihuan_str ()
正则其他功能难以实现,道路的变量(文字分类和道路数字分类的地方很难掌握)。
//用于写入通配符替换的字符串的函数
//使用说明:使用tihuan_str($fustr、$str1、$str2)函数: $fustr---要处理的字符串、$str2-----允许通配符(* )的替换字符串
$fustr='sdfs
df '; $str1='
'; $str2=' (我已被替换) );
function tihuan_str($fustr、$str1、$str2)
{if(empty($fustr ) $str1) ) {echo '参数12不得为空格字符
'; 返回$ fustr; }
$wz1=0;
$arr=explode (() ) (* )、$str1);
$arr1=array (;
$k=0;
//过滤空字符
for($I=0; $i
{if($arr[$i]!==' ' ) {$arr1[$k]=$arr[$i]; $k; }
}
$cishu=0;
while($WZ1
//单个替换的过程
$jishu=0;
for($I=0; $i
{
if () $wz=strpos ) $fustr,$arr1[$i],$wz1 )!==false )
{if($I==0) $ks=$wz;
if($I==count ) $arr1(-1 ) $js=$wzstrlen ) $arr1[$I] );
$WZ1=$WZstrlen($arr1[$I];
$jishu;
}
else break;
}
//满足条件时
if($jishu==count ) $arr1) ) {$cishu;
echo '第'.$cishu.'次交换:
';
echo 'begin:'.($ks 1 ).' end:'.$js.'
';
$leftstr=substr($fustr,0,$ks );
$rightstr=substr($fustr,$js );
if (! $rightstr($rightstr=' ';
$ fustr=$ leftstr.$ str2. $ rightstr;
$WZ1=$ksstrlen($str2);
echo 'next:'.($wz1 1).'
';
echo $fustr.'
';
}
else{echo停止
'; 布雷克; }
echo '
';
}
返回$ fustr;
}
$str=tiHuan_str($fustr,$str1,$str2);
echo '置换效果: '.$str;
?