powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Функция форматирования строки
5 сообщений из 5, страница 1 из 1
Функция форматирования строки
    #33652823
Dionnis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день всем!
Подскажите пожалуйста есть ли в VB такая функция, где в качестве одного параметра передаётся строка со специальными символами (например %s, %d и т.д.), а в качестве другого - массив значений. И в итоге получается строка, где специальные символы заменяются значениями из массива. Кто работал с Delphi наверняка знают такую замечательную функцию как format(s: string; Arr:array of const): string. Наверняка чтонибудь аналогичное есть и в VB, только вот найти никак не удаётся :( ...
Заранее всем спасибо.
...
Рейтинг: 0 / 0
Функция форматирования строки
    #33653436
Ashton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Встроенной функции нет, но ее несложно написать самому.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
Public Function fnReplace( _
  ByVal strText As String, _
  ParamArray varItems() As Variant) As String
    Dim lngI As Long
    Dim lngPos As Long
    Dim strReplace As String
    
    On Error GoTo HandleErr
    
    Do
        lngPos = InStr( 1 , strText, "%")
        
        If lngPos >  0  Then
            strText = Left$(strText, lngPos -  1 ) & _
              varItems(lngI) & Mid$(strText, lngPos +  2 )
              lngI = lngI +  1 
        End If
    Loop While lngPos >  0 
        
ExitHere:
    fnReplace = strText
    Exit Function

HandleErr:
    Select Case Err.Number
        Case Else
            MsgBox "Error: " & Err.Description & " " & _
              Err.Number
    End Select
    Resume ExitHere
End Function

Код: plaintext
1.
2.
3.
Public Sub TestReplace()
    Debug.Print fnReplace("Текст с меткой %c и меткой %d", _
      "Метка C", "Метка D")
End Sub
...
Рейтинг: 0 / 0
Функция форматирования строки
    #33654670
Dionnis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>> Ashton : Спасибо, большое! Я думал правда что есть стандартная функция, но всё равно спасибо!!! :))
...
Рейтинг: 0 / 0
Функция форматирования строки
    #33896037
blinow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну это не с Delphu а с С. И в VB нет такой надобности, там просто
"Тра ля ля " & intNumber & " бум бум " & lngNumber и т.д. и т.п.
...
Рейтинг: 0 / 0
Функция форматирования строки
    #33898532
bac
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 blinow
Не скажи. А если у меня шаблоны сообщений в файле, то предложыенный вариант самое то. Это Вам не "Тра-ля-ля" и "Бум-бум"
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Функция форматирования строки
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]