ケースの説明:
次の条件を満たすテキスト ファイル (input.txt) 内のすべての文字を検索します
1. 小文字であり、かつ
2. 両側に大文字が 3 つだけあること。 ) ) たとえば、xAAAbAAAd の b
まず、同じレベルのディレクトリに input.txt
を作成し、次にファイルに英語の文字をいくつか入力します (規則的または不規則でも構いません)
例:
asadfsaxAAAbAAAdRYTaASD
コードは次のとおりです:
<?php header('content-type:text/html;charset=utf8 '); 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 =''; $d=file_get_contents('input.txt'); $res = getlower(str_replace("\r\n","",$d)); echo $res;
bda
上記は、PHP が文字タイプを決定するための PHP の内容を含む、ファイルから一致する条件文字列を読み取る方法を紹介しました。これが、PHP チュートリアルに興味のある友人に役立つことを願っています。