首页 / 网页编程 / PHP / 把字符串中的任意连续字符换成一个对应字符
把字符串中的任意连续字符换成一个对应字符2010-01-20<?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+/", "[url=file://\1]\1[/url]", $str1) ."<br>";
?>