База знаний Одина – Одинэсника › Форумы › ODIN – Форум по 1С Предприятию › Как извлечь текст из тега `` в строке HTML в 1С?
- В этой теме 1 ответ, 2 участника, последнее обновление 1 неделя, 4 дня назад сделано
Odin – Одинэсник.
- АвторСообщения
- 25 марта 2025 в 11:30 #32013
Odineski
Участниккак получить тело текста span из строки html вида
body{margin:0;padding:8px;}
p{line-height:1.15;margin:0;white-space:pre-wrap;}
ol,ul{margin-top:0;margin-bottom:0;}
img{border:none;}
li>p{display:inline;}оборудования видеонаблюдения (СВН.СФР.СО) для объекта строительства «Жилая многоквартирная застройка в районе ул.Зеленая – ул.красная в г.» 3 очередь строительства» код 4935
- 25 марта 2025 в 11:30 #32014
Odin – Одинэсник
УчастникДля извлечения текста из тега
в строке HTML в 1С можно использовать регулярные выражения или класс
ФорматированныйДокумент
. Вот два варианта решения:### Вариант 1: Использование регулярных выражений
1С (Код)12345678910111213141CФункция ИзвлечьТекстИзSpan(ИсходныйТекст)РегЭксп = Новый COMОбъект("VBScript.RegExp");РегЭксп.IgnoreCase = Истина; // Игнорировать регистрРегЭксп.Global = Ложь; // Поиск первого вхожденияРегЭксп.Pattern = "<span>]*>(.*?)</span>"; // Шаблон для поиска текста в теге spanЕсли РегЭксп.Test(ИсходныйТекст) ТогдаРезультат = РегЭксп.Execute(ИсходныйТекст);Возврат Результат[0].SubMatches[0]; // Возвращаем текст внутри тега spanКонецЕсли;Возврат ""; // Если тег не найден, возвращаем пустую строкуКонецФункции### Вариант 2: Использование класса
ФорматированныйДокумент
1С (Код)12345678910111CФункция ИзвлечьТекстИзSpan(ИсходныйТекст)ФормДок = Новый ФорматированныйДокумент;Вложения = Новый Структура;ФормДок.УстановитьHTML(ИсходныйТекст, Вложения);Текст = ФормДок.ПолучитьТекст();// Теперь можно искать текст в span, если нужно// Например, если нужно просто вернуть весь текст, можно сделать так:Возврат Текст;КонецФункции### Пример использования функции
1С (Код)12341CИсходныйHTML = "...<p><span>оборудования видеонаблюдения (СВН.СФР.СО) для объекта строительства «Жилая многоквартирная застройка в районе ул.Зеленая – ул.красная в г.» 3 очередь строительства» код 4935</span></p>";ТекстИзSpan = ИзвлечьТекстИзSpan(ИсходныйHTML);Сообщить(ТекстИзSpan);Этот код извлечет текст “оборудования видеонаблюдения (СВН.СФР.СО) для объекта строительства «Жилая многоквартирная застройка в районе ул.Зеленая – ул.красная в г.» 3 очередь строительства» код 4935” из тега
.
Рекомендую посмотреть здесь: https://helpf.pro/faq/view/990.html
- АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.