Приблизительное сравнение переменной на php

Руслан

Новичок
Приблизительное сравнение переменной на php

Ребята, стоит такая задачка. Есть переменная - требуется с помощью if проверить не является ли она приблизительно текстом "текст"..

Как можно сделать, что то подобное проверке в mysql с помощью like %текст%, но на php?

Скажите, плиз, что за функцию использовать или где прочитать про это.
Спасибо.
 

Руслан

Новичок
спасибо, ребят.. А какую из этих функций использовать не подскажете, а то пока я переведус англ. на русский.. если успеете ответить буду благодарен.. а пока пошёл переводить =)
 

rotoZOOM

ACM maniac
Эээээ ... ту ссылку которую я дал смотрел ? Много там переводить?
 

Руслан

Новичок
rotoZOOM
Ой, извини.. Посмотрел что они со ссылкой Антихриста (какой ник страшный =) ) примерно одинаковые - подумал, что тоже самое.. Сейчас посмотрю.

kode
Спасибо. Сейчас попробую..

-~{}~ 22.04.08 15:47:

Вобщем из предложенного кое-что выбрал и сделал следующим образом.. Хотя мне кажется что несколько кривоватый подход.. Если есть критика - покритикуйте.
Сделал так:
PHP:
 $tsp=strstr ($aktmod['modname'],'ТСП');
  if ($tsp!=FALSE)
  {
    echo "<tr><td class=bold2>".$aktmod['modname']."</td>  <td class=bold2>".$aktmod['sernumb']."</td><td class=bold2>";
     echo $aktmod['datemod'];
     echo "</td><td class=bold2></td>      <td width=40px class=bold2><input name=\"narabot[".$i."]\" type=\"\" value=\"\" size=5 maxlength=20></td>
     </tr>";
   }
   else
   {
     echo "<tr><td class=bold2>".$aktmod['modname']."</td>  <td class=bold2>".$aktmod['sernumb']."</td><td class=bold2>";
     include 'mod/poverkadata.php';
     echo "</td><td class=bold2></td>      <td width=40px class=bold2><input name=\"narabot[".$i."]\" type=\"\" value=\"\" size=5 maxlength=20></td>
     </tr>";

    }

Вобщем я сделал через
$tsp=strstr ($aktmod['modname'],'ТСП');
if ($tsp!=FALSE)
{
}
 

vitvuiko

Новичок
levenshtein()
Функция выполняет определение различия Левенштейна двух строк.

Синтаксис:

int levenshtein(string str1, string str2)
int levenshtein(string str1, string str2, int cost_ins, int cost_rep, int cost_del)
int levenshtein(string str1, string str2, function cost)

Под понятием "различие Левенштейна" понимается минимальное число символов, которое требовалось бы заменить, вставить или удалить для того, чтобы превратить строку str1 в str2.

Сложность алгоритма этой функции равна O(m*n), т.е. пропорциональна произведению длин строк str1 и str2, поэтому эта функция намного более быстрая, чем функция similar_text().

Как видим, у функции три вида синтаксиса. В первом случае функция возвращает число необходимых операций над символами строк для преобразования str1 в str2:
 
Сверху