Страница: 1 |
Страница: 1 |
Вопрос: как дополнить строку до необходимой длины пробелам
Добавлено: 22.02.07 16:18
Автор вопроса: RAVER | ICQ: 1005765
как дополнить строку до необходимой длины пробелами
имею строку вида "абвгде" длиною 6 символов, конечная необходимая длина 10 символов.
т.е. хотелось бы видеть "абвгде "
ни у кого случайно нету такой функции:?
Ответы
Всего ответов: 12
Номер ответа: 1
Автор ответа:
GenyaA
Вопросов: 0
Ответов: 185
Web-сайт:
Профиль | | #1
Добавлено: 22.02.07 16:24
s = "abvgd"
s = s & Space(l - Len(s))
Номер ответа: 2
Автор ответа:
RAVER
ICQ: 1005765
Вопросов: 6
Ответов: 10
Профиль | | #2
Добавлено: 22.02.07 16:25
спасибо
Номер ответа: 3
Автор ответа:
GenyaA
Вопросов: 0
Ответов: 185
Web-сайт:
Профиль | | #3
Добавлено: 22.02.07 16:27
Строго говоря так:
s = "abvgd"
s = left(s,l) & IIf(len(s)<l,Space(l-Len(s)),""
Номер ответа: 4
Автор ответа:
RAVER
ICQ: 1005765
Вопросов: 6
Ответов: 10
Профиль | | #4
Добавлено: 22.02.07 16:30
)Спасибо, меня и первый вариант устроил, я просто не знал о функции Space.
Номер ответа: 5
Автор ответа:
Visual Basic .NET 2005 Пиратская версия
Вопросов: 38
Ответов: 190
Web-сайт:
Профиль | | #5
Добавлено: 22.02.07 16:36
В .NET можно так:
Function AddSpace(ByVal txt as string, ByVal spacecount as integer) As String
dim i as integer
addspace=txt
for i=0 to i=spacecount
addspace=addspace+" "
next
End Function
Номер ответа: 6
Автор ответа:
Павел
Администратор
ICQ: 326066673
Вопросов: 368
Ответов: 5968
Web-сайт:
Профиль | | #6
Добавлено: 22.02.07 17:00
В дотнете вместо Space можно (и нужно) использовать
New String(10, " "c)
Может параметры местами перепутал, точно не помню
Номер ответа: 7
Автор ответа:
ADSemenov.ru
Вопросов: 5
Ответов: 276
Web-сайт:
Профиль | | #7
Добавлено: 22.02.07 17:30
____ Всегда решал эту задачу "дубово" через функцию mid(). Добавлял необходимое число пробелов справа (в Вашем случае 10) и выделял первые символы (10 шт.). Такой способ работает быстро и не зависит от длины исходной строки. Например:
Номер ответа: 8
Автор ответа:
GenyaA
Вопросов: 0
Ответов: 185
Web-сайт:
Профиль | | #8
Добавлено: 22.02.07 19:53
Да, точно...
s = "abvgd"
s = Left(s&Space(l),l)
Номер ответа: 9
Автор ответа:
Павел
Администратор
ICQ: 326066673
Вопросов: 368
Ответов: 5968
Web-сайт:
Профиль | | #9
Добавлено: 22.02.07 19:58
К сожалению, это решение из разряда "через жо".
Номер ответа: 10
Автор ответа:
Павел
Администратор
ICQ: 326066673
Вопросов: 368
Ответов: 5968
Web-сайт:
Профиль | | #10
Добавлено: 22.02.07 20:00
Хотя что-то в этом есть Надо бенчмарк провести.
Номер ответа: 11
Автор ответа:
AgentFire
ICQ: 192496851
Вопросов: 75
Ответов: 3178
Профиль | | #11
Добавлено: 23.02.07 12:39
Можно так
Dim a As String
Dim b As String * L
a="asdfa"
b=a
a=b
Номер ответа: 12
Автор ответа:
night-roll
Вопросов: 36
Ответов: 326
Профиль | | #12
Добавлено: 26.02.07 04:04
зачем усложнять
a = "asdfa" ' задаём строку
Debug.Print a ' выводится строка в 10 символов (asdfa + 5 пробелов)