The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Вопрос про regexp"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Вопрос про regexp" 
Сообщение от ACCA Искать по авторуВ закладки(ok) on 05-Ноя-05, 15:49  (MSK)
Hi, people,

что-то я торможу. Хочу заменить слова по списку:

%sandr = (
   'one' => 'OnE',
   'ONE' => 'oNe',
   'two' => 'TWo',
   'TWO' => 'Two',
);

$srch = join ('|', keys %sandr);

$txt =~ s/(\W)($srch)/$1.$sandr{$2}/ego;
$txt =~ s/($srch)(\W)/$sandr{$1}.$2/ego;
$txt =~ s/^($srch)/$sandr{$1}/ego;
$txt =~ s/($srch)$/$sandr{$1}/ego;

то есть хочу заменить, если слово встретилось целиком, а не частью другого слова. Как написать поиск и замену одним выражением?

  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]

1. "Вопрос про regexp" 
Сообщение от mthawk emailИскать по авторуВ закладки(ok) on 09-Ноя-05, 12:56  (MSK)
>Hi, people,
>
>что-то я торможу. Хочу заменить слова по списку:
>
>%sandr = (
>   'one' => 'OnE',
>   'ONE' => 'oNe',
>   'two' => 'TWo',
>   'TWO' => 'Two',
>);
>
>$srch = join ('|', keys %sandr);
>
>$txt =~ s/(\W)($srch)/$1.$sandr{$2}/ego;
>$txt =~ s/($srch)(\W)/$sandr{$1}.$2/ego;
>$txt =~ s/^($srch)/$sandr{$1}/ego;
>$txt =~ s/($srch)$/$sandr{$1}/ego;
>
>то есть хочу заменить, если слово встретилось целиком, а не частью другого
>слова. Как написать поиск и замену одним выражением?


$txt =~ s/\b($srch)\b/$sandr{$1}/ego;

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру