Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Разбить строку на части, Работа со строками в VB 
:(
    Опции темы
Piece of Cake
Дата 27.3.2002, 19:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 27.3.2002

Репутация: нет
Всего: нет



Привет всем!
У меня есть некая строка, содержащая символы перевода строки "\n". Мне нужно посчитать их кол-во и получить несколько строк из символов, находящихся между символами перевода строки.
Как это сделать?
Больше спасибо.
PM MAIL   Вверх
cardinal
Дата 27.3.2002, 23:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



Вот это Вам поможет посчитать кол-во \n в TextBox. Остальное можно сделать разными способами (мыслей у меня много, а делать пока не пробовал). Если ничего не придумайте, то пишите. Вообще я не считаю, что таким образом в конце концов получится идеальный вариант решения проблемы, но лучше я не придумал как можно посчитать \n в строке. Ну дерзайте! :D

Private a As Boolean
Private b As Boolean
Private x As Integer
Private y As Integer

Private Sub Command1_Click()
Text1.Text = ""
Text2.Text = ""
y = 0
End Sub

Private Sub Form_Load()
x = 1
y = 0
End Sub

Private Sub Text1_Change()
Dim str As String
If b = True Then
b = False
'a = False
y = y + 1
Text2.Text = y
'Text2.Refresh
End If
Text2.Refresh
End Sub

Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)

If a = True Then
   If x <= 0 Then
   a = False
       If KeyCode = 78 Then
       b = True
       x = 1
       End If
   End If
   Text1_Change
End If

If KeyCode = 220 Then
a = True
x = x - 1
End If

End Sub

В коде есть один недостаток - раскладки клавиатуры не распознаются. Соответственно и \т будет тоже считаться так же как и \n !
PM   Вверх
Piece of Cake
Дата 28.3.2002, 11:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 27.3.2002

Репутация: нет
Всего: нет



cardinal , спасибо за помощь, но это не совсем то, что мне надо. Логика мне не нужна, я просто недавно знаком с VB, и не знаю, как простые вещи реализуются.

    Попробую сформулировать вопрос по-другому:
Есть строка str_A="b1Abb2Abbb3Abbbb4"
Mне нужно получить количество вхождений символа "A" в строке str_A, индексы всех вхождений, а затем получить массив строк, в котором бы содержалось:
array[1]="b1"
array[2]="bb2"
array[3]="bbb3"
array[4]="bbbb4"
Да, вот так вроде бы понятней, чего бы мне хотелось. :)
Спасибо.
PM MAIL   Вверх
Grey
Дата 28.3.2002, 17:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 91
Регистрация: 25.3.2002

Репутация: нет
Всего: нет



Можно так например. Правда если буквы А в строке нет совсе в коллекции будет вся строка :D . Ну вообщем разберешься.

Код
Dim str As String
   Dim i As Long
   Dim j As Long
   Dim StrArray As New Collection
   str = "b1Abb2Abbb3Abbbb4"
   i = 1
   Do While True
       j = i
       i = InStr(j, str, "A", vbBinaryCompare)
       If i <> 0 Then
           StrArray.Add Mid(str, j, i - j)
       Else
           StrArray.Add Mid(str, j, Len(str) - j + 1)
           Exit Do
       End If
       i = i + 1
   Loop

PM MAIL   Вверх
KDA
  Дата 29.3.2002, 16:34 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Split("[Строка]","[символ разбития]"...) возвращает массив строк
  Вверх
sharig
Дата 29.5.2002, 00:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 29.5.2002
Где: Москва

Репутация: нет
Всего: нет



PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0479 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.