]{1,60})",$pattern)."/si"; if(preg_match($pattern,$q)){ //print $pattern; preg_match_all($pattern,$q,$m); $ret=array(); for($i=1;$i<=count($m)-1;$i++){ $ret[$i]=$m[$i][0]; } return $ret; } } function answer($qmem,$qar,$apattern){ //print_r($qar); foreach($qmem as $mindex => $memar){ $max=count($qar); $c=0; $a=$apattern; $shit=$memar; foreach($qar as $qindex => $word){ print "$word::".$memar[$qindex]."::$max::$c
"; if($word == $memar[$qindex]){ $c++; } } print "
"; if($c>=$max){ //print_r($shit); print "found"; foreach($memar as $aindex => $aword){ $a=str_replace("{".$aindex."}",$aword,$a); } return "$a"; } } } if(strstr($q,"::")){ $ex=explode("::",$q); $pattern1=$ex[0]; $pattern2=$ex[1]; //unlink("patternmem.txt"); if(is_file("patternmem.txt")){ $pattermemory=unserialize(file_get_contents("patternmem.txt")); }else{ $pattermemory=array(); } //print_r($pattermemory); $pattermemory[$pattern1]=$pattern2; file_put_contents("patternmem.txt",serialize($pattermemory)); print "csirke"; }else{ $pattermemory=unserialize(file_get_contents("patternmem.txt")); //print_r($pattermemory); //unlink("mem.txt"); foreach($pattermemory as $qq => $a){ $m=ispreg($q,$a); if($m){ if(is_file("mem.txt")){ $mem=unserialize(file_get_contents("mem.txt")); }else{ $mem=array(); } $mem[$qq][]=$m; file_put_contents("mem.txt",serialize($mem)); } } foreach($pattermemory as $qq => $a){ $m=ispreg($q,$qq); if($m){ $mem=unserialize(file_get_contents("mem.txt")); print $qq; print_r($m); //print_r($mem[$qq]); print answer($mem[$qq],$m,$a); } } } ?>