|
0 / 0 / 0
Регистрация: 31.07.2006
Сообщений: 16
|
|
Как можно заменить имя переменной в тексте шаблона?08.04.2008, 14:31. Показов 1506. Ответов 3
Метки нет (Все метки)
Как можно заменить имя переменной в тексте шаблона?
У меня есть текстовый шаблон, в котором размещены метки с именами переменных, Эти метки должны заменяться значениями переменных. Переменные глобальные, и имена их известны. Однако как вставить в функцию замены имя переменной, а не её значение? Для поиска и замены я использую следующую функцию: Function ReplaceAll(SourceString As String, ReplaceThis As String, WithThis As String)As String Dim Temp As Variant Temp = Split(SourceString, ReplaceThis) ReplaceAll = Join(Temp, WithThis) End Function SourceString - исходная строка с метками, ReplaceThis - имя заменяемой переменной, WithThis - значение переменной. Все просто.Но Вот как можно использовать именно ИМЯ переменной, чтобы не вставлялось её значение?
0
|
|
| 08.04.2008, 14:31 | |
|
Ответы с готовыми решениями:
3
Можно назначить имя переменной такое же как у встроенной функции Как можно заменить все коды в тексте на соответсвующий символ? |
|
vasok
|
|||||||||||||||||||||
| 11.04.2008, 13:33 | |||||||||||||||||||||
|
Надеюсь, что правильно всё понял...
Когда-то я делал что-то подобное, по-моему, не суперзаумно, но - работало... Суть - есть файл типа
Если да, то делается следующим образом: созадётся глобальный массивчик с UDT-типом вроде
Можно с помощью этих функций и внутри кода их исползовать, эти переменные. а вот в парсере будешь просто вычленять имена переменных (тот самый ^variable1^) и искать соответствующее имя в массиве. И - заменять. Можно тоже самое и с помощью коллекции, наверное, забабашить ![]() Ну я надеюсь идея понятна, там ничего сложного, дальше сам домыслишь. |
|||||||||||||||||||||
|
0 / 0 / 0
Регистрация: 31.07.2006
Сообщений: 16
|
|
| 13.04.2008, 03:58 [ТС] | |
|
Спасибо за совет, мне понравилась идея с семейством. Я сделал процедуру для добавления и удаления переменных и их меток в семействе VariantMarker.
Public VariantMarker As New Collection Перед заменой маркера в процедуру VarChange передается значение переменной Var и имя метки, связанной с этой переменной. Public Sub VarChange(Var As String, VarName As String) On Error GoTo AddItem 'Если элемента для удаления не находим Dim m As Integer VariantMarker.Remove (VarName) AddItem: VariantMarker.Add Var, VarName End Sub После этого я передаю функции, заменяющей маркеры, текст с маркерами и коллекцию VariantMarker Text = RemoveMark(Text,VariantMarker) Public Function RemoveMark(ByVal Text As String, VariantCollection As Collection) As String ......... Функция находит метки в тексте, (которые одновременно - и ключи в семействе) и заменяет их соответствующими значеними из семейства.Все очень просто, нужно только следить за свежестью значений переменных в коллекции.
0
|
|
|
vasok
|
|
| 13.04.2008, 11:12 | |
|
рад, что помогло
|
|
| 13.04.2008, 11:12 | |
|
Помогаю со студенческими работами здесь
4
как можно одно слово в тексте заменить другим с использованием строк Можно ли использовать в тексте программы не имя строки, а ее значение? Можно ли склеить имя переменной из частей? Присвоить имя переменной такое же как имя файла Можно ли в запросе имя таблицы записать переменной? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|