Войти
NeoBooker.ru
Добро пожаловать к нам в гости!
Наш сайт посвящён программе NeoBook, с помощью которой вы легко сможете создавать собственные мультимедиа-приложения без необходимости изучать сложные языки программирования! Зарегистрируйтесь, чтобы стать членом нашего сообщества.
  • Страница 1 из 1
  • 1
Модератор форума: Peter, DEMBEL  
Форум NeoBook » Всё о программе NeoBook » Сценарии и скриптовые языки в Neobook » Пробелы (Удаление лишних пробелов)
Пробелы
mishemДата: Вт, 24 Января 2012, 20:14 | Сообщение # 1
Эксперт форума
Создаем поле ввода текста и кнопку.
В поле ввода пишем текст с заранее лишними пробелами.
Лишние пробелы - это больше одного, между словами.
:)

Получится что то типа такого:



Вставляем в кнопку этот код, он уже с коментариями:

Code
.ASCII-код #32 обозначает пробел.
.Ищем в строке два пробела подряд
SearchStr "[#32][#32]" "[TextEntry1]" "[Poisk]" ""
.Если есть два и более пробела подряд
While "[Poisk]" "<>" "0"
.Удаляем один пробел
StrDel "[TextEntry1]" "[Poisk]" "1" "[TextEntry1]"
.Ищем в строке два пробела подряд
SearchStr "[#32][#32]" "[TextEntry1]" "[Poisk]" ""
EndWhile


Нажимаем на кнопку.
И получаем что то типа такого:



Этот пример удаляет пробелы только в середине, без учета запятых, точек, начала и конца строки.
Но он показывает как можно избавится програмно от лишних не верно введенных символов.
;)
Прикрепления: 2764296.png (6.0 Kb) · 0072060.png (5.9 Kb)


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.
 
СообщениеСоздаем поле ввода текста и кнопку.
В поле ввода пишем текст с заранее лишними пробелами.
Лишние пробелы - это больше одного, между словами.
:)

Получится что то типа такого:



Вставляем в кнопку этот код, он уже с коментариями:

Code
.ASCII-код #32 обозначает пробел.
.Ищем в строке два пробела подряд
SearchStr "[#32][#32]" "[TextEntry1]" "[Poisk]" ""
.Если есть два и более пробела подряд
While "[Poisk]" "<>" "0"
.Удаляем один пробел
StrDel "[TextEntry1]" "[Poisk]" "1" "[TextEntry1]"
.Ищем в строке два пробела подряд
SearchStr "[#32][#32]" "[TextEntry1]" "[Poisk]" ""
EndWhile


Нажимаем на кнопку.
И получаем что то типа такого:



Этот пример удаляет пробелы только в середине, без учета запятых, точек, начала и конца строки.
Но он показывает как можно избавится програмно от лишних не верно введенных символов.
;)

Автор - mishem
Дата добавления - 24 Января 2012 в 20:14
SScrewДата: Сб, 30 Июня 2012, 16:49 | Сообщение # 2
Любопытный
А если так:
Code
StrReplace "[TextEntry1]" "[#32][#32]" "" "[TextEntry1]" ""

:)
 
СообщениеА если так:
Code
StrReplace "[TextEntry1]" "[#32][#32]" "" "[TextEntry1]" ""

:)

Автор - SScrew
Дата добавления - 30 Июня 2012 в 16:49
PeterДата: Сб, 30 Июня 2012, 17:18 | Сообщение # 3
Админ NeoBook
Quote (SScrew)
А если так

А если пробелов два или больше трех, т.е. четное количество?
:)


- А вам какую операционку поставить - экспи, семерку или висту?
- Это ты сейчас о чем?
- Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный?
- Ну, конечно, надежный!
- Вот, значит - экспи, без вопросов! Сейчас сделаем...

(Улицы разбитых фонарей, сезон 10, серия 17)

Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!


При модном втюхе модоподдающимся начинает нравиться
 
Сообщение
Quote (SScrew)
А если так

А если пробелов два или больше трех, т.е. четное количество?
:)

Автор - Peter
Дата добавления - 30 Июня 2012 в 17:18
СергейДата: Пн, 02 Июля 2012, 05:49 | Сообщение # 4
Необукер
Quote (SScrew)
А если так:

Такой пример будет работать примерно в таком режиме
Code
Loop "1" "2" "[i]"
  StrReplace "[TextEntry1]" "[#32][#32][#32]" "[#32]" "[TextEntry1]" ""
  StrReplace "[TextEntry1]" "[#32][#32]" "[#32]" "[TextEntry1]" ""
EndLoop
:)
у меня так в одном парсере работало, вроде в первом варианте информера.
 
Сообщение
Quote (SScrew)
А если так:

Такой пример будет работать примерно в таком режиме
Code
Loop "1" "2" "[i]"
  StrReplace "[TextEntry1]" "[#32][#32][#32]" "[#32]" "[TextEntry1]" ""
  StrReplace "[TextEntry1]" "[#32][#32]" "[#32]" "[TextEntry1]" ""
EndLoop
:)
у меня так в одном парсере работало, вроде в первом варианте информера.

Автор - Сергей
Дата добавления - 02 Июля 2012 в 05:49
Форум NeoBook » Всё о программе NeoBook » Сценарии и скриптовые языки в Neobook » Пробелы (Удаление лишних пробелов)
  • Страница 1 из 1
  • 1
Поиск: