Рег. выражение "все совпадения кроме..."

  • Автор темы Автор темы vertigo141
  • Дата начала Дата начала

vertigo141

Client
Регистрация
27.03.2016
Сообщения
21
Реакции
1
Баллы
3
Доброго времени суток
Подскажите пожалуйста, как заменить все пробелы в тексте( в данном случае пробелы), кроме тех, что между словами ?
Пример:
1 Виктор Павлович 13 58 188:48 2333;
 
Обработка текста - Замена - Что заменять: {-String.Space-} на пустоту. Исключить буквы из поиска [^a-Z]
 
Обработка текста - Замена - Что заменять: {-String.Space-} на пустоту. Исключить буквы из поиска [^a-Z]
А как возможно исключить ? Это необходимо прописывать в регулярном выражении или есть функция в зенке ? Пользуюсь старой версией, 5.9.9.1
 
Воспользуйтесь следующим С# кодом (в приложении)
 

Вложения

  • Оценить
Реакции: vertigo141
Большое Вам спасибо )
Вы бы проверили код на разных примерах

Для замены можно использовать такую регулярку:
Код:
Развернуть Свернуть Копировать
(?im)\ +(?=\S*[^\sa-zа-яё]\S*(\ |$))|(?<=(^|\ )\S*[^\sa-zа-яё]\S*)\ +
 
Последнее редактирование:
Вы бы проверили код на разных примерах

Для замены можно использовать такую регулярку:
Код:
Развернуть Свернуть Копировать
(?i)\ +(?=\S*[^\sa-zа-яё]\S*(\ |$))|(?<=(^|\ )\S*[^\sa-zа-яё]\S*)\ +
Работает Ваше рег. выражение замечательно, кроме одного нюанса...
Если будет вот так:
1 Виктор Павлович 13 58 188:48 2333;
56 Андрей Викторович 64 99 367:21 9001;
9 Дмитрий Неважнокто 51 33 111:44 764;

... то в таком случае пробелы между числом "56" и "Андреем" не будет заменяться, так же, как и перед "Дмитрий".
Но в любом случае спасибо, такое выражение я бы не скоро составил.
 
  • Оценить
Реакции: vertigo141

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