Программирование
Веб программирование

Строковые функции VB

 
 

Я их специально не поместил в первую часть, т.к. они нам пригодятся при создании календаря. Для начала создай новый проект, на форму кинь 3 текстовых поля и 3 кнопки. 

Len(Слово) - считает сколько символов в слове. В созданном проекте воспользуемся кнопкой 1: 

Private Sub Command1_Click()
Text1.Text = Len(Text2.Text) 'При нажатии на кнопку в текстовом поле появится 5,т.к. у 2 - ого текстового поля свойство Text по умолчанию равно Text2 - а здесь 5 букв
End Sub
Private Sub Command1_Click()
Text1.Text = Len("Visual Basic") 'При нажатии на кнопку 1 в текстовом поле появится 12,т.к. у Visual Basic - 12 букв
End Sub

2. Left(Слово, Длина) - эта функция служит для вырезания подстроки. В созданном проекте воспользуемся кнопкой 2:

Private Sub Command2_Click()
Text2.Text = Left("Visual Basic", 6) 'При нажатии на кнопку 2 в текстовом поле появится Visual, т.к. мы вырезаем 6 символов
End Sub

3. Mid(Слово, Позиция, Длина) - это функция нужна также как и Left для вырезания, но у Left будет вырезаться с самого первого символа, а в Mid можно задать позицию. В созданном проекте воспользуемся кнопкой 3:

Private Sub Command3_Click() 
Text1.Text = Mid("VisualBasic", 7, 5) 'При нажатии на кнопку 3 в текстовом поле появится Basic, здесь 7 - это позиция, а 5 - означает количество вырезаемых символов. 
End Sub 

4. vbCrLf - Забытая всеми Константа перевода строки, вместо нее можно использовать: "Chr (13) + Chr (10)".
Пример: На форму кинь кнопку, и текст. поле(свойство Multiline = True), код:

Private Sub Command1_Click()
Text1.Text = "Функция перевода" + vbCrLf + "строки"
End Sub

Здесь, фраза "Функция перевода" будет на одной строке, а слово "строки" на другой.


Есть вопросы? Спроси на нашем форуме!!
антон [28.06.2011 14:09]

а как же right??))
я читал на форумах

алексей [12.11.2011 18:53]

text1=right("visualbasic,5) ' text1="basic"

Татьяна [26.11.2011 20:57]

Подскажите,а как с цифрами функцию эту ставить? Со словами понимаю,а с цифрами нет.

алексей [26.11.2011 21:51]

в место слов цифры и всё
text1=Mid("19823090",5,3) ' text1="309"
или
dim n as Byte
n=1982309
text1=Mid(n,5,3) ' text1="309"

алексей [26.11.2011 21:53]

ой в этом случае не
dim n as Byte
а
Dim n As Double
потому что число большое

ILAIKIN [17.02.2012 14:13]

Spasibo za sait po vb!!!

Denri [18.04.2012 17:24]

где остальные функции???

FakeMan [27.06.2012 19:50]

А как сделать чтобы вырезалась часть слова до определенного симаола??

FireDay [27.06.2012 20:00]

vbCrLf = vbNewLine
FakeMan, http://vbbook.ru/visual-basic/visual-basic-poisk-i-zamena/

Алексей(alex13sh) [06.07.2012 12:15]

FakeMan, если я правильно понял то
a=mid(txt,4,10-4) ' от 4 до 10

Harmless [22.08.2012 18:05]

Может кто-нибудь знает как сделать так что бы программа читала файлы типа уин;пасс и записывала уин в Text1 и пасс в Text2???

Алексей(alex13sh) [22.08.2012 18:08]

Harmless , запись в файл происходит тобою же??
если да то есть 2 варианта))

Harmless [22.08.2012 18:08]

Я понимаю что вопрос не совсем в тему, но думаю это как-то связано с данным уроком.

Harmless [22.08.2012 18:18]

Ну в общем я пишу флудер и хотел что бы уин и пароль программа брала из текстового файла.
Для написания я использовал icq контрол от Karasя. У контрола есть свойство uin и pass, то есть выглядит так:
icq.uin = ""
icq.pass = ""
Нужно сделать так что бы уин и пароль в писывались в свои места, но проблема только в том что пароль в файле может быть любой длины. Как сделать так чтобы программа понимала где уин и где пароль?

Алексей(alex13sh) [22.08.2012 19:36]

Harmless, вот подумай как мне ответить если я незнаю чё за файл и как туда записываются эти юины и пароли

ТЫ МНЕ ПРО САМ ФАЙЛ РАССКАЖИИ!!

формат , вид записи в неё

тебе запись файла тоже нада?? или ты чужой файл собрался читать??

Harmless [22.08.2012 20:14]

Private Sub Command1_Click()
Dim s1, s2 As String
Open App.Path & "Аси2.txt" For Input As #1
Line Input #1, s1
icq.uin = Left(s1, 9)
icq.Pass = Mid(s1, 11)
Line Input #1, s2
icq2.uin = Left(s2, 9)
icq2.Pass = Mid(s2, 11)
Close #1
End Sub
Я уже можно сказать разобрался. Но всё равно проблема есть. Короче в текстовом файле уины и пассы записаны вот так:
123456789;qwerty
987654321;123456.
В файле у меня окло 500 уинов. Как видно из кода на каждую строчку нужна переменная типа String.
Что это значит Left(s1, 9). Это значит что из прочитанной строчки программа вырезает первые девять символов (поскольку уины в файле 9 значные то соответственно вырезаем первые 9 символов и вставляем результат в icq.uin). Как я уже говорил на каждую строчку нужна переменная, а так как в файле 500 строк, то получается 500 переменных! Скажите может есть другой выход? Только прошу вас помогите 2 день мучаюсь.

Алексей(alex13sh) [22.08.2012 20:33]

неоч
если тока в таком виде записываются и не ты их так записываешь то
Open App.Path & "Аси2.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, s1
icq2.uin = Left$(s1, 9)
icq2.Pass = Righ$(s1, len(s1)-10)

loop
Close #1

и заметно то что новичок))
во первых
Mid(s2, 11)
не mid а righ во вторых надо ставить значёк $ т.е. righ$
в третих читать таким образом как ты каждую строчку ужас!!!!

мыслишь плоско((
ты пишешь тока для хрень такой и всё ?? т.е. учить яп нормально несобираешься??
http://vbbook.ru/visual-basic/faiylu-v-visual-basic-prodoljenie/
тут все виды чтение записи

есть ещё вариант бинарная запись и чтение)) -- такая запись эканомит место и время))

Release [22.08.2012 21:56]

alex13sh зачем оскорблять пользователей сайта?
"мыслишь плоско((
ты пишешь тока для хрень такой и всё ?? т.е. учить яп нормально несобираешься??" - это думаю лишнее..

Алексей(alex13sh) [23.08.2012 01:01]

да мож и оскорбил но просто если у него цель немножко изучить яп дря создание собственого брута то это бреед

мыслишь плоско((
мож и лишнее высказывание но если он пишет в этой стате где говорится о mid и left но неговорится о Righ то какого хрена он использует mid как righ ?? вот как это объяснить??
и ещё я указал на эту статью http://vbbook.ru/visual-basic/faiylu-v-visual-basic-prodoljenie/
я надеюсь знание чтение файла он из этой статьи получил
если да то какого хрена он использует Line Input #1, s1 БЕЗ ЦИКЛА????????
т.е. можн самому тогадатся то что писать куча Line Input #1, s1 - ЭТО БРЕЕД!!

я всё таки извеняюсь за грубость

Harmless [23.08.2012 01:28]

То что новичок я и не скрываю. alex13sh когда ты начинал изучать Visual Basic у тебя ведь тоже были вопросы. Мыслю я не плоско. Просто не знал как именно решить данную проблему и пытался решить так как мог. Я сам понимал что так сделать не вариант. В учебниках ответа не нашел поэтому решил спросить здесь, а ты сразу критиковать. Но все таки спасибо что подсказал. Теперь буду знать))

Алексей(alex13sh) [23.08.2012 01:54]

у меня вопрос для чего ты изучаешь vb6 ??

а то что вопросы я не против я ж ответил
а вот несколько замечание я сделал насчёт mid и righ и чтение файлы
я не пойму ты что читаешь?? этот сайт?? и если да то на каком уроке??

Harmless [23.08.2012 02:16]

VB6 изучаю для себя. Я когда то хотел отучится на программиста, но увы не по карману это моим родителям(( Поэтому решил сам. Читаю я не сайт, а С.Н.Лукин Visual basic 6.0 самоучитель. Там много примеров, но почему то некоторые из них не работают. И я вовсе не изучаю VB6 только для того что бы написать собственный брут или флудер.

Алексей(alex13sh) [23.08.2012 02:27]

ну эт хорошо. а то многих знаю тех кто занимаются ради написание брута или написание троя

Ладно буду стараться меньше высказываться

а какой у тебя стаж в програмирование??
а статьи на сайте читаешь?? или зпшёл на вопроса??

Harmless [23.08.2012 02:39]

Стаж не большой. 4 месяца. Да читаю если что то не понятно. Но лучше почитаю по больше и попробую на практике. И ещё я понял одну важную деталь. А именно то что исходники ранее написанных программ лучше сохранять. Но это наверное только новичкам исходники хранить. А тем кто программирует скажем года 2 они вряд ли нужны.

Алексей(alex13sh) [23.08.2012 03:20]

Harmless, если что в чат заходи . Поможем ))
ток я стал в нём реже сидеть в последнию неделю так как я уже в нём не модер(( славо богу временно))

Harmless [23.08.2012 03:27]

Хорошо. И еще раз спасибо за помощь)) Удачи!

win32 [07.01.2013 22:59]

vbCrLf и vbLewLine не работают((

Samou4120 [05.03.2013 13:06]

у меня vbCrLf строку не переводит строку в проге а выдает символ





зато переводит строку когда я пытаюсь этот символ сюда вставить =D

Samou4120 [05.03.2013 13:35]

Ага! все! разобрался
сперва нужно установить MultiLine на True в текстовом поле (по умолчанию стоит на False)

да простит меня автор за невнимательность =D

ilim [15.07.2016 15:39]

Помогите
Есть 4 текстовых окна
text1
text2
text3
text4

Нужно что бы вводимые данные и текст1, текст2, текст3 выводились по порядку в текстовом окне 4
Это я сделал

text4.text=text1.text +" "+ text2.text + " "+ text3.text
" " - это для пробела)))

Что мне нужно

НУжно разделить текст на 2 части например (Иванов Иван Иваныч)

В тест 1 переместить Иванов а в текст 2 Иван Иваныч

Спасибо заранее.



Оставлять комментарии можно только зарегистрированным




Предупреждение: Вся информация представлена исключительно в образовательных целях.
Ни авторы, ни администрация не несут ответственности в случае ее использования в противозаконных целях.