![]() |
|
Модераторы: mihanik |
![]()
|
|
| weirdo |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 16.1.2007 Репутация: нет Всего: нет |
у меня есть текст(ввожу InputBox'ом)...
V 1992 qwer 12 qwert www 1234 12.... Если первый символ текста не является малой латинской буквой, то оставить его без изменения. Если же это малая латинская буква, но за начальной группой малых латинских букв (она может быть одна) не следует цифра, то также оставить текст без изменения. Иначе каждую цифру, принадлежащую группе цифр, следующей за начальной группой малых латинских букв, заменить символом * То есть должно получиться : V **** qwer ** qwert www **** 12.... Т.к в VBA нельзя принимать текст как массив...как мне поступить? Проверку текста сделал...а дальше? Может проверить весь текст на пробелы? Занести их в массив... И затем переделать весь текст? |
|||
|
||||
| mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 9 Всего: 109 |
Мудрёное какое-то правило...
Можно его сформулировать по-другому? Итак... 1. Есть строка, состоящая из "слов", разделённых пробелом. 2. Какие-то "слова" состоят только из цифр. Такие слова будем называть числами. 3. Если перед числом №1 в строке стоит число №2, то число №1 следует заменить соответствующим количеством звёздочек. Так? ЗЫ.... Звиняйте... 3. Если перед числом №1 в строке стоит число №2, то число №1 следует оставить так, как есть. В противном случае его следует заменить соответствующим количеством звёздочек. Теперь правильно? Это сообщение отредактировал(а) mihanik - 2.2.2007, 13:31 |
|||
|
||||
| weirdo |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 16.1.2007 Репутация: нет Всего: нет |
ммм...если после НАБОРА маленьких латинских букв идет какое то число(несколько подряд чисел)...то числа заменить на звездочки....
НО...если после числа....через пробел стоит еще одно число...то оставить его без изменения...прямо как в примере.. в примере число "12" не изменяем...потому что он не идет после группы латинских букв... Это сообщение отредактировал(а) weirdo - 2.2.2007, 14:14 |
|||
|
||||
| mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 9 Всего: 109 |
Та-а-ак...
Ты путаешь понятия "число" и "цифра". Цифра это : 0 или 1 или 2 или 3 или ... или 9. Число - это последовательность из цифр и (возможно) спецзнаков (запятая, знак мантиссы и т.п.). Перепиши условие так, чтобы всем всё было понятно... А-то мне, например, не все тонкости задачи удалось понять... Добавлено @ 15:06 Опираясь на сказанное выше: Допустим есть число А. Если перед ним стоит число Б, то число А оставляем в исходном состоянии. Еслиже перед числом А стоит слово (последовательность из букв и цифр, начинающаяся с буквы), то число А меняем на звёздочки. Так? |
|||
|
||||
| weirdo |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 16.1.2007 Репутация: нет Всего: нет |
" Допустим есть число А.
Если перед ним стоит число Б, то число А оставляем в исходном состоянии. Еслиже перед числом А стоит слово (последовательность из букв и цифр, начинающаяся с буквы), то число А меняем на звёздочки." именно так...ТОЛЬКО...надо последовательность из букв....а не из букв и цифр... просто я внес внегласное условие...что в тексте нет такого: 4asd....или 123tter.... Это сообщение отредактировал(а) weirdo - 2.2.2007, 15:47 |
|||
|
||||
| mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 9 Всего: 109 |
Ну...
У меня как-то так получилось...
Добавлено @ 16:44 А вообще-то нужно мне было отправить этот вопрос в центр помощи... Ну, да ладно... Это сообщение отредактировал(а) mihanik - 2.2.2007, 16:40 Присоединённый файл ( Кол-во скачиваний: 3 )
Project1.rar 1,47 Kb |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 26 Всего: 454 |
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| mihanik |
|
|||
![]() -=Белый Медведь=- ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 4054 Регистрация: 24.4.2006 Где: г. Тверь Репутация: 9 Всего: 109 |
Akina!!!
Как я мог о Split забыть!!! |
|||
|
||||
| weirdo |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 16.1.2007 Репутация: нет Всего: нет |
разбираюсь.....
|
|||
|
||||
![]()
|
| Правила форума "Программирование, связанное с MS Office" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще!
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Программирование, связанное с MS Office | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |