Страница: 1 |
Страница: 1 |
Вопрос: Помогите.....народ!!!
Добавлено: 24.09.04 11:05
Автор вопроса: EDIK
Как из txt вытянуть из одной строки определеные символы, например, первые 5 и последние 10?
Ответы
Всего ответов: 9
Номер ответа: 1
Автор ответа:
crackoff
ICQ: 156165990
Вопросов: 12
Ответов: 229
Профиль | | #1
Добавлено: 24.09.04 11:09
Left()
Right()
Mid()
Описание есть на это сайте.
Номер ответа: 2
Автор ответа:
LamerOnLine
ICQ: 334781088
Вопросов: 108
Ответов: 2822
Профиль | | #2
Добавлено: 24.09.04 11:28
Лучше
Left$()
Right$()
Mid$()
Если ты, конечно, не хочешь с Variant работать.
А описание есть и в Help к VB, и в MSDN, да и подсказка там понятна.
Номер ответа: 3
Автор ответа:
Navigator
ICQ: 177815632
Вопросов: 11
Ответов: 70
Профиль | | #3
Добавлено: 25.09.04 03:33
Есть мнение, что
Left()
Right()
Mid()
работают быстрее чем
Left$()
Right$()
Mid$()
Номер ответа: 4
Автор ответа:
CyRax
Разработчик Offline Client
ICQ: 204447456
Вопросов: 180
Ответов: 4229
Web-сайт:
Профиль | | #4
Добавлено: 25.09.04 05:36
К сожалению это не так. Иначе бы VB не был таким тормознутым.
А вообще лучше применять так:
[CODE]
DIM A [AS VARIANT]: A=LEFT(TEXT)
 IM B AS STRING: B=LEFT$(TEXT$)[/CODE]
ИМХО, вторая будет работать быстрее если только ей передавать строчную переменную, а не Variant.
Возьми лучше да потестируй. Можно проверить скорость: Variant=Left, Variant=Left$, String=Left и String=Left$.
Номер ответа: 5
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #5
Добавлено: 25.09.04 14:23
та короче, какая разница что быстрее, от того что его прога будет работать на пол секунды медление, ему погоды не сыграет. Так что
t$ = Mid(Text1,3,1) - Третий символ
t$ = Mid(Text1,1,1) - Первый символ
t$ = Mid(Text1,3,2) - Третий и четвёртый
t$ = Left(Text1,1) - Первый слева
t$ = Right(Text1,1) - Первый справа
t$ = Left(Text1,3) - Три первых слева
Думаю разберёшся...
Номер ответа: 6
Автор ответа:
Barsik
Разработчик Offline Client
ICQ: 343368641
Вопросов: 17
Ответов: 686
Web-сайт:
Профиль | | #6
Добавлено: 27.09.04 18:14
2HACKER:
а если надо проделать операции скажем с 1000 строк....
делай выводы....
Номер ответа: 7
Автор ответа:
sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #7
Добавлено: 27.09.04 22:03
На счет скорости, работаем с пом. АПИ со стеком, и работа со строками становится в сотни раз шустрее
Номер ответа: 8
Автор ответа:
AgentFire
ICQ: 192496851
Вопросов: 75
Ответов: 3178
Профиль | | #8
Добавлено: 27.09.04 22:28
Самая простая документация:
Variant — 16 байт + 1 байт на каждый символ
String — не помню, но гораздо меньше
Номер ответа: 9
Автор ответа:
Павел
Администратор
ICQ: 326066673
Вопросов: 368
Ответов: 5968
Web-сайт:
Профиль | | #9
Добавлено: 07.10.04 11:24
2Noviks:
> Variant - 16 байт + 1 байт на каждый символ
> String - не помню, но гораздо меньше
VB6 хранит тип String в Unicode, т.е. на один символ 2 байта.
А насчет Variant я выяснить ничего не смог. Если использовать LenB для
получения размера переменной, то VB рапортует, что на 5-символьную
строку уходит 10 байт. А если записать это в файл, то пишется 9 байт:
4 байта какого-то мусора (заголовок Variant) и 5 байт - на саму
строку.