Part of Slepp's ProjectsPastebinTURLImagebinFilebin
Feedback -- English French German Japanese
Create Upload Newest Tools Donate
Sign In | Create Account

Advertising

Something
Thursday, May 3rd, 2012 at 10:27:46pm MDT 

  1. <?php
  2.  
  3. class colidencia { // ferramentas de colidência
  4.        
  5.         function permutaPalavraChave ($string) { //cria permutas do tipo 'amor mora oram ramo'
  6.                 $resultado = array();      
  7.                 $radicais = explode(" ",$string); // se houver mais de uma palavra, separa a string em uma array de strings
  8.                 for ($j=0;$j<sizeof($radicais);$j++) {
  9.                         $palavra = ($radicais[$j]); // trata uma palavra isolada da lista de radicais
  10.                         $tamanho = strlen($palavra); // guarda o tamanho do radical a ser permutado
  11.                         $palavra .= $palavra; // dobra o tamanho da palavra, para buscar letras do início no final
  12.                         for ($i = 0;$i < $tamanho;$i++) {
  13.                                 $troca = substr($palavra,$i,$tamanho); // núcleo da função: faz a permuta de letras
  14.                                 array_push($resultado,$troca); // insere cada permuta na array
  15.                         }
  16.                         var_dump($resultado);
  17.                 }
  18.                 return($resultado);
  19.         }
  20.  
  21.         function buscaPalavraChave ($query) { // faz busca de uma lista de palavras-chave
  22.  
  23.                 $con = mysql_connect("localhost","root","");
  24.                 if (!$con)
  25.                 {
  26.                       die('Could not connect: ' . mysql_error());
  27.                 }
  28.                 mysql_select_db("local", $con) or die('Could not select db: ' . mysql_error());
  29.                 for ($i=0;$i<sizeof($query);$i++) {
  30.                         $query[$i] = '.' . $query[$i] . '.';
  31.                 }
  32.                 // a próxima linha é complexa. A variável $sql é uma string que contém o
  33.                 // SELECT; o parâmetro de busca de expressão regular é uma array de strings
  34.                 // formada por uma lista de palavras separadas pelo alternador '|'
  35.                 // além disso, só retorna valores se os despachos exigirem uma ação de parte
  36.                 // da Procuradoria.
  37.                 $sql = "SELECT processo,marca FROM rpi WHERE despacho IN (003,004,400,401,403,404) AND marca REGEXP '" . implode($query,"|").'\'';
  38.                 $resultado = mysql_query($sql) or die ('Could not connect: ' . mysql_error());
  39.                 mysql_close($con);
  40.                 return($resultado);
  41.                
  42.         }
  43.        
  44.         function colidePalavraChave ($string) {
  45.        
  46.                 $query = $this->permutaPalavraChave($string);
  47.                 $fim = $this->buscaPalavraChave($query);
  48.        
  49.                 while ($row = mysql_fetch_assoc($fim)) {
  50.                      echo $row["processo"] . "   " . $row["marca"] . '<br>';
  51.                 }
  52.         }
  53.        
  54.         function permutaRadical ($string,$arg) { //cria permutas do tipo 'amor mora oram ramo'
  55.                 $resultado = array();      
  56.                 $radicais = explode(" ",$string); // se houver mais de uma palavra, separa a string em uma array de strings
  57.                 for ($j=0;$j<sizeof($radicais);$j++) {
  58.                         $palavra = ($radicais[$j]); // trata uma palavra isolada da lista de radicais
  59.                         $tamanho = strlen($palavra); // guarda o tamanho do radical a ser permutado
  60.                         $palavra .= $palavra; // dobra o tamanho da palavra, para buscar letras do início no final
  61.                         for ($i = 0;$i < $tamanho;$i++) {
  62.                                 $troca = substr($palavra,$i,$arg); // núcleo da função: faz a permuta de letras
  63.                                 array_push($resultado,$troca); // insere cada permuta na array
  64.                         }
  65.                 }
  66.                 return($resultado);
  67.         }
  68.  
  69.         function buscaRadical ($query) { // faz busca de uma lista de radicais
  70.  
  71.                 $con = mysql_connect("localhost","root","");
  72.                 if (!$con)
  73.                 {
  74.                       die('Could not connect: ' . mysql_error());
  75.                 }
  76.                 mysql_select_db("local", $con) or die('Could not select db: ' . mysql_error());
  77.                 for ($i=0;$i<sizeof($query);$i++) {
  78.                         $query[$i] = '.' . $query[$i] . '.';
  79.                         echo $query[$i];
  80.                 }
  81.                 // a próxima linha é complexa. A variável $sql é uma string que contém o
  82.                 // SELECT; o parâmetro de busca de expressão regular é uma array de strings
  83.                 // formada por uma lista de palavras separadas pelo alternador '|'
  84.                 // além disso, só retorna valores se os despachos exigirem uma ação de parte
  85.                 // da Procuradoria.
  86.                 $sql = "SELECT processo,marca FROM rpi WHERE despacho IN (003,004,400,401,403,404) AND marca REGEXP '" . implode($query,"|").'\'';
  87.                 $resultado = mysql_query($sql) or die ('Could not connect: ' . mysql_error());
  88.                 mysql_close($con);
  89.                 return($resultado);
  90.                
  91.         }
  92.  
  93.         function colideRadical ($string,$arg) {
  94.        
  95.                 $query = $this->permutaRadical($string,$arg);
  96.                 $fim = $this->buscaRadical($query);
  97.        
  98.                 while ($row = mysql_fetch_assoc($fim)) {
  99.                      echo $row["processo"] . "   " . $row["marca"] . '<br>';
  100.                 }
  101.         }
  102.        
  103.         function extraiAfixos ($string,$arg) { //cria permutas do tipo 'amor mora oram ramo'
  104.                 $resultado = array();      
  105.                 $radicais = explode(" ",$string); // se houver mais de uma palavra, separa a string em uma array de strings
  106.                 for ($j=0;$j<sizeof($radicais);$j++) {
  107.                         $palavra = ($radicais[$j]); // trata uma palavra isolada da lista de radicais
  108.                         $tamanho = strlen($palavra); // guarda o tamanho do radical a ser permutado
  109.                         $prefixo = substr($palavra,0,$arg);
  110.                         $sufixo = substr($palavra,-$arg);
  111.                         array_push($resultado,$prefixo,$sufixo); // insere cada permuta na array
  112.                         var_dump($resultado);
  113.                        
  114.                 }
  115.                 return($resultado);
  116.         }
  117.        
  118.         function buscaAfixos ($query) { // faz busca de uma lista de prefixos e sufixos
  119.  
  120.                 $con = mysql_connect("localhost","root","");
  121.                 if (!$con)
  122.                 {
  123.                       die('Could not connect: ' . mysql_error());
  124.                 }
  125.                 mysql_select_db("local", $con) or die('Could not select db: ' . mysql_error());
  126.                 $query[0] = '\^' . $query[0]; // acrescenta o ^ da Expressão Regular "Prefixo"
  127.                 $query[1] = $query[1] . '\$'; // acrescenta o $ da Expressão Regular "Sufixo"
  128.                 // a próxima linha é complexa. A variável $sql é uma string que contém o
  129.                 // SELECT; o parâmetro de busca de expressão regular é uma array de strings
  130.                 // formada por uma lista de palavras separadas pelo alternador '|'
  131.                 // além disso, só retorna valores se os despachos exigirem uma ação de parte
  132.                 // da Procuradoria.
  133.                 $sql = "SELECT processo,marca FROM rpi WHERE despacho IN (003,004,400,401,403,404) AND marca REGEXP '" . implode($query,"|").'\'';
  134.                 $resultado = mysql_query($sql) or die ('Could not connect: ' . mysql_error());
  135.                 mysql_close($con);
  136.                 return($resultado);
  137.                
  138.         }
  139.  
  140.         function colideAfixos ($string,$arg) {
  141.                
  142.                 $query = $this->extraiAfixos($string,$arg);
  143.                 $fim = $this->buscaAfixos($query);
  144.        
  145.                 while ($row = mysql_fetch_assoc($fim)) {
  146.                      echo $row["processo"] . "   " . $row["marca"] . '<br>';
  147.                 }
  148.         }
  149.  
  150. }
  151.  
  152. $manel = new colidencia;
  153. $manel->colideAfixos("Vasconcelos",5);
  154.  
  155.  
  156. ?>

advertising

Update the Post

Either update this post and resubmit it with changes, or make a new post.

You may also comment on this post.

update paste below
details of the post (optional)

Note: Only the paste content is required, though the following information can be useful to others.

Save name / title?

(space separated, optional)



Please note that information posted here will expire by default in one month. If you do not want it to expire, please set the expiry time above. If it is set to expire, web search engines will not be allowed to index it prior to it expiring. Items that are not marked to expire will be indexable by search engines. Be careful with your passwords. All illegal activities will be reported and any information will be handed over to the authorities, so be good.

worth-right
fantasy-obligation