Как задать уловие по удалению

MarcoPolo

Client
Регистрация
06.10.2012
Сообщения
143
Благодарностей
13
Баллы
18
В ходе обработки текста в некоторых местах получается много пробелов. Например, в одной строке может быть между словами 5 пробелов, а может быть и 1. Собственно как бы так поставить, чтобы если пробелов больше 1 подряд, то они заменяются на один пробел. Догадываюсь, что нужно использовать {-String.Space-} , но вот как именно, с чем? Пардон, неправильно тему обозначил, нужно было "Как задать уСловие по ЗАМЕНЕ". Прошу модеров исправить.
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 885
Баллы
113
Берем экшен Обработка текста, там выбираем замена, в текст вставляем переменную с текстом, в что заменять вставляем {-String.Space-}{-String.Space-} на что заменять ставим {-String.Space-}
Этот экшен можно повторить несколько раз, т.к. если в строке будет 5 пробелов, то после такой замены там останется 3, после еще 1 замены 2 и после третьей 1.

Так же можно заменить по регулярному выражению:
Тот же экшен, только переставляем условие поиска на regex и в поле что заменять вписываем:
 

MarcoPolo

Client
Регистрация
06.10.2012
Сообщения
143
Благодарностей
13
Баллы
18
Проблему решил следующим образом: в экшене обработки текста выбрал регулярку и замену:
{-String.Space-}{-String.Space-}{1,}
на
{-String.Space-}
Может кому поможет :-) Пользуйтесь. Все таки не хватает у меня знаний, так как не программист, но можно было бы для Зенно и расширить описание
http://wiki.zennolab.com/doku.php?id=ru:creating-a-regular-expressions
а то как то совсем скудно.
А если использовать только
то можно остаться без тире по всем строкам.
 
  • Спасибо
Реакции: bad robot

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 714
Баллы
113

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)