Автор Тема: Удаление слов с повторяющимися символами  (Прочитано 6583 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн DartSidius

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 309
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Подскажите как сделать, чтобы при разборе строки удалить свола, в которых повторяются символы . . . Нужно с помощью регулярки . .

Оффлайн arto

  • Ветеран
  • *****
  • Сообщений: 699
  • +0/-0
  • 2
    • Просмотр профиля
Удаление слов с повторяющимися символами
« Ответ #1 : 10 Июля 2009, 09:18:13 »
\\b\\S*(\\S)\\S*\\1\\S*\\b

Оффлайн DartSidius

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 309
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Удаление слов с повторяющимися символами
« Ответ #2 : 10 Июля 2009, 09:46:36 »
$str =~ s/\\b\\S*(\\S)\\S*\\1\\S*\\b//s;

только первое слово с повторяющимися символами удаляет . .

Оффлайн arto

  • Ветеран
  • *****
  • Сообщений: 699
  • +0/-0
  • 2
    • Просмотр профиля
Удаление слов с повторяющимися символами
« Ответ #3 : 10 Июля 2009, 11:53:27 »
опция g?

Оффлайн DartSidius

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 309
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Удаление слов с повторяющимися символами
« Ответ #4 : 10 Июля 2009, 13:18:37 »
Ну Вы бы сами попробовали с g . . . удаляет всю строку, а не слово

Оффлайн arto

  • Ветеран
  • *****
  • Сообщений: 699
  • +0/-0
  • 2
    • Просмотр профиля
Удаление слов с повторяющимися символами
« Ответ #5 : 10 Июля 2009, 14:05:23 »
# perl -le \'$_ = $ARGV[0]; s#\\b\\S*(\\S)\\S*\\1\\S*\\b##g; print\' "abba tesla most babba test"
 tesla most  
#

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28