Функция форматирования строки - VB

Узнай цену своей работы

Формулировка задачи:

Добрый день всем!
Подскажите пожалуйста есть ли в VB такая функция, где в качестве одного параметра передаётся строка со специальными символами (например %s, %d и т.д.), а в качестве другого - массив значений. И в итоге получается строка, где специальные символы заменяются значениями из массива. Кто работал с Delphi наверняка знают такую замечательную функцию как format(s: string; Arr:array of const): string. Наверняка чтонибудь аналогичное есть и в VB, только вот найти никак не удаётся :( ...
Заранее всем спасибо.

Решение задачи: «Функция форматирования строки»

textual
Листинг программы
<font color="blue">Public</font> <font color="blue">Function</font> fnReplace( _
  <font color="blue">ByVal</font> strText <font color="blue">As</font> <font color="blue">String</font>, _
  ParamArray varItems() <font color="blue">As</font> Variant) <font color="blue">As</font> <font color="blue">String</font>
    <font color="blue">Dim</font> lngI <font color="blue">As</font> <font color="blue">Long</font>
    <font color="blue">Dim</font> lngPos <font color="blue">As</font> <font color="blue">Long</font>
    <font color="blue">Dim</font> strReplace <font color="blue">As</font> <font color="blue">String</font>
    
    <font color="blue">On</font> <font color="blue">Error</font> <font color="blue">GoTo</font> HandleErr
    
    <font color="blue">Do</font>
        lngPos = InStr(<font color="darkblue"><b>1</b></font>, strText, <font color="teal">"%"</font>)
        
        <font color="blue">If</font> lngPos > <font color="darkblue"><b>0</b></font> <font color="blue">Then</font>
            strText = Left$(strText, lngPos - <font color="darkblue"><b>1</b></font>) & _
              varItems(lngI) & <font color="blue">Mid</font>$(strText, lngPos + <font color="darkblue"><b>2</b></font>)
              lngI = lngI + <font color="darkblue"><b>1</b></font>
        <font color="blue">End</font> <font color="blue">If</font>
    <font color="blue">Loop</font> <font color="blue">While</font> lngPos > <font color="darkblue"><b>0</b></font>
        
ExitHere:
    fnReplace = strText
    <font color="blue">Exit</font> <font color="blue">Function</font>

HandleErr:
    <font color="blue">Select</font> <font color="blue">Case</font> Err.Number
        <font color="blue">Case</font> <font color="blue">Else</font>
            MsgBox <font color="teal">"Error: "</font> & Err.Description & <font color="teal">" "</font> & _
              Err.Number
    <font color="blue">End</font> <font color="blue">Select</font>
    <font color="blue">Resume</font> ExitHere
<font color="blue">End</font> <font color="blue">Function</font>

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.444 из 5
Похожие ответы