Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Общие вопросы > сравнение стрингов


Автор: StargazerV 12.4.2010, 20:26
Наверное глупый вопрос, но сам ответа пока не нашел.

Нужно сравнить 2 стринга на наличие одного, как часть другого. Элементарным сравнение будет $string1 =~ $string2.
Вопрос заключается в том, как сравнить 2 стринга, не принимая во внимание определенные знаки.
Пример:
Код

$string1 = "hello world";
$string2 = "llo wor{";

в данном случае, нужно игнорировать разнуци в знаке "{". Единственное, к чему пришел сам, это сделать вспомогательную пременную, которая будет содержать второй стринг, но уже без лишних знаков.
Код

$string1 = "hello world";
$string2 = "llo wor{";

$temp = $string2;
$temp =~ s/{//;

if($string1 =~ $temp)
.
.
.


это в принципе решает задачу, но вопрос в том, можно ли то же, сделать каким-то образом по средствам perl. почему-то кажется, что это решаемо через regular expression, но вот как, не нашел.

Автор: Pfailed 12.4.2010, 21:16
Код

$string1 =~ /llo wor{{0}/


Автор: arto 12.4.2010, 21:48
perldoc Text::Levenshtein

Автор: StargazerV 12.4.2010, 22:55
Цитата(Pfailed @  12.4.2010,  21:16 Найти цитируемый пост)
код Perl

Код

$string1 =~ /llo wor{{0}/




Спасибо, очень помогло! smile 



Цитата(arto @  12.4.2010,  21:48 Найти цитируемый пост)
perldoc Text::Levenshtein 


не совсем понял то направление, на который это указывает, но почитаю. Спасибо.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)