php实现 统计输入中各种字符的个数
一、总结
一句话总结:谋而后动,想清楚,会非常节约编写代码的时间。
1、对结果可能是0的变量,记得初始化?
4 $len=0;
5 $len=strlen($str); 6 $numChr=0;$num=0;$numSpace=0;
二、统计输入中各种字符的个数
题目描述
输入一行字符,分别统计出包含英文字母、空格、数字和其它字符的个数。
/**
* 统计出英文字母字符的个数。
*
* @param str 需要输入的字符串
* @return 英文字母的个数
*/
public static int getEnglishCharCount(String str)
{
return 0;
}
/**
* 统计出空格字符的个数。
*
* @param str 需要输入的字符串
* @return 空格的个数
*/
public static int getBlankCharCount(String str)
{
return 0;
}
/**
* 统计出数字字符的个数。
*
* @param str 需要输入的字符串
* @return 英文字母的个数
*/
public static int getNumberCharCount(String str)
{
return 0;
}
/**
* 统计出其它字符的个数。
*
* @param str 需要输入的字符串
* @return 英文字母的个数
*/
public static int getOtherCharCount(String str)
{
return 0;
}
输入描述:
输入一行字符串,可以有空格
输出描述:
统计其中英文字符,空格字符,数字字符,其他字符的个数
代码:
1 <?php 2 //前面统计英语字母、空格、数字的时候就顺便把对应的位置替换成'',无需替换,计算出前三个,后面那个减一下就好 3 while($str=trim(fgets(STDIN))){ 4 $len=0; 5 $len=strlen($str); 6 $numChr=0;$num=0;$numSpace=0; 7 for($i=0;$i<$len;$i++){ 8 if(($str[$i]>='a'&&$str[$i]<='z')||($str[$i]>='A'&&$str[$i]<='Z')) 9 { 10 $numChr+=1; 11 }else if($str[$i]>='0'&&$str[$i]<='9'){ 12 $num+=1; 13 }else if($str[$i]==' '){ 14 $numSpace++; 15 } 16 } 17 $numOther=$len-$numChr-$num-$numSpace; 18 echo $numChr.PHP_EOL.$numSpace.PHP_EOL.$num.PHP_EOL.$numOther.PHP_EOL; 19 } 20 21 ?>