把字符串中的任意连续字符换成一个对应字符

王朝other·作者佚名  2008-12-22
窄屏简体版  字體: |||超大  

<?php

//1,把字符串中的任意空格换成一个

$str1 = 'A B C ';

echo '<xmp>';

echo '1:';

echo preg_replace ("/\s+/", ' ', $str1);

echo '</xmp>';

//2,把字符串中的任意连续字符 M 换成一个 M

echo '2: ';

$str1 = 'AMMMBMMMMCMM ';

echo preg_replace ("/M+/", 'M', $str1) .'<br>';

//3,把字符串中的任意连续字符换成一个对应字符

echo '3:<br>';

$str1 = 'ACCCB CCCCCGGG OOO YYYFFFXXXZZZZZ';

echo $str1 .'<br>';

$str2 = '';

$i = 0;

for ($i=0; $i<strlen($str1); $i++)

{

$str2 = $str2 . $str1{$i};

$j = 1;

while ($str1{$i}==$str1{$i + $j})

$j++;

$i = $i + $j - 1;

}

echo $str2 .'<br>';

//4,把字符串中的任意连续字符换成一个对应字符

echo '4:<br>';

$str1 = 'ACCCB CCCCCGGG OOO YYYFFFXXXZZZZZ';

echo $str1 .'<br>';

$len = strlen($str1);

$str2 = $str1[0];

$ch = $str2;

for($i=1; $i<$len; $i++){

$ch2=$str1[$i];

if($ch!=$ch2){

$str2.=$ch2;

$ch=$ch2;

}

}

echo $str2 . "<br />";

//5,把字符串中的任意连续字符换成一个对应字符

echo '5:<br>';

$str1 = 'ACCCB CCCCCGGG OOO YYYFFFXXXZZZZZ';

echo preg_replace("/(.)\\1+/", "\1", $str1) .'<br>';

?>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航