php 获取例如aAAAxAAAa里的x规则的PHP方法
获取例如aAAAxAAAa里的x规则的PHP方法 [代码片段(71行)]
<?php function getLower($data){ $length = strlen($data)-1; $str = ''; for ($i=0;$i<$length;$i++){ $flag = true; if(!isUpper($data[$i])){//当前为小写 成立 if($i == 3){ $flag = getFlag($data,$i); //如果后第四个是大写 不成立 if(isUpper($data[$i+4])){ $flag = false; } }else if($i == $length-3){ $flag = getFlag($data,$i); //如果前第四个是大写 不成立 if(isUpper($data[$i-4])){ $flag = false; } }else if($i>3 && $i<$length-3){ $flag = getFlag($data,$i); //如果前||后第四个有一个是大写就不成立 if(isUpper($data[$i+4]) || isUpper($data[$i-4])){ $flag = false; } }else{ $flag = false; } if($flag){ @$str .= $data[$i]; } } } return $str; } //公共当前字符的前三后和三个 function getFlag($data,$i){ $flag = true; for($j=$i-3;$j<=$i+3;$j++){ if($j != $i){ //如果有一个是小写就不成立 if(!isUpper($data[$j])){ $flag = false; } } } return $flag; } /** * * 判断是否是大写字母 */ function isUpper($s){ if(@ord($s) < 97){ return true; }else{ return false; } } $res = ''; $handle = fopen("./input.txt",'r'); $d = fread($handle,filesize("./input.txt")); $res = getlower(str_replace("\\r\\n","",$d)); /*while(!feof($handle)){//逐行读取方法 $buffer = fgets($handle,4096); $res .= getlower($buffer); }*/ echo $res; fclose($handle); ?> //该片段来自于http://outofmemory.cn
精彩图集
精彩文章