Форумы HiProg.com - MS ACCESS, VBA, VB

 

Ответить на сообщение

Вернуться к теме

Вы отвечаете на сообщение:

ник: osmor
условие (сильно упрощено, для понимания сути):
Есть 2 таблицы.
Таблица 1
Тип - Long
Алиас - String

Пример данных:

Код      | Алиас
1        | NF-kappaG
1        | ABC(45)
2        | NF-kappaG
2        | ABC(45)

Таблица 2
Тип (из таблицы 1) - Long
Старое значение
Новое значение

Пример данных:

Тип      |   Старое     |    Новое  
1        |  -           |     
1        |  (           |
1        |  (           |
1        |  G           |    @ 
2        |  -           |     +
2        |  kappa       |


Где в поле "Новое" ничего нет, это значит там пробел
Нужно заменить в исходном Алиасе старые символы на новые согласно типу. Т.е. после обработки в таблице 1 должно получиться

Код      | Алиас
1        | NF kappa@
1        | ABC 45 
2        | NF+G
2        | ABC(45)

Размер исходный таблицы разный от 2 тыс. до 30 тыс. записей
операция НЕ РАЗОВАЯ, т.е. время имеет значение
Вопрос:
Как бы все это "заоптимизировать"
У кого есть опыт?
Как лучше заменять каждый символ отдельно или написать функцию которая будет за один раз заменять все символы и только потом записывать и переходить к новой строке?
Что быстрее RegExp или Replace или MID?

В общем интересны любые предложения как, кто стал бы решать такую задачу.

Призовой вопрос.
Кроме всего прочего нужно разделить "группы типов" символов пробелом.
"группы типов" - это:
1 - все буквы
2 - все цифры
3 - все не буквенные символы

т.е. строка
привет123@123привет!?
должна превратиться в
привет 123 @ 123 привет !?

Тоже нужны идеи (пока есть только одна, проверять символ и следующий за ним на соответствие группе и вставлять пробел если группа изменилась, но думаю что на 30 тыс записей по 100 символов будет ОЧЕНЬ долго)


Ваше имя:

Пароль:

Цитировать: [quote][/quote] Код: [code][/code]
Жирный: [b][/b] Наклонный: [i][/i]
URL: [url][/url] 

Сообщение:

 Размер файла не более 50 Кбт. Большие файлы можно размещать на www.slil.ru

Прикрепить:

 

Для вставки смайлов в текст щелкните по значку.