Как упростить код поиска.

  • Автор темы Guest
  • Дата начала
Статус
Закрыто для дальнейших ответов.
G

Guest

#1
Доброе время суток!

Есть код:

Код:
$rez=0; 
$a1="Превая строка для поиска" 
$a2="Вторая строка Для поиска"; 
$a1=~tr/ЙЦУКЕНГШЩЗХЪЭЖДЛОРПАВЫФЯЧСМИТЬБЮ/йцукенгшщзхъэждлорпавыфячсмитьбю/; // Делаем все сиволы в первой строке нижнего регистра 
$a2=~tr/ЙЦУКЕНГШЩЗХЪЭЖДЛОРПАВЫФЯЧСМИТЬБЮ/йцукенгшщзхъэждлорпавыфячсмитьбю/; // Делаем все сиволы во второй строке нижнего регистра 

@a1=split(/\s+/,$a1); // разбираем первую стоку на массив 
@a2=split(/\s+/,$a2); // тоже для второй строки 

$l=@a1; // считаем слова в первой строке 
$m=@a2; // во второй 

// Цикл ниже сравнивает слова и если есть хоть одно совпадение, записываем в $rez значение 1 

for ($i2=0; $i2<$l; $i2++){ 
for ($k2=0; $k2<$m; $k2++){ 

if ($a1[$i2] eq $a2[$k2]){$rez=1} 

} 
} 


if ($rez >0){print "Есть совпадения.";}
Должен быть способ короче и быстрее.

А если у меня есть 500 строк и мне надо сравнивать все эти строки между собой таким способом? Будет долго.

Подскажите:
Как этот код оптимизировать
 
Статус
Закрыто для дальнейших ответов.