Замена символов в подстроке строки
Я работаю над блогом с Django, однако мой вопрос связан с Python, а не с Django.
Для написания постов в блоге я использую Quill, который генерирует пост в HTML. Я сохраняю этот HTML в базе данных, а затем отображаю пост с помощью фильтра |safe. До сих пор все работало хорошо, пока ... Я хочу отобразить HTML код в качестве примеров, который, очевидно, считается безопасным из-за фильтра и интерпретируется браузером.
В качестве обходного пути я пытаюсь создать функцию, способную экранировать HTML код, как только он оказывается между тегами, но не экранировать HTML из этого тега.
Например, если quill возвращает следующее:
<p> This is the code you need:
<pre class="myclass"> <div> The code </div> </pre>
</p>
Я хотел бы сохранить в базе данных что-то вроде этого:
<p> This is the code you need:
<pre class="myclass"> <div> The code </div> </pre>
</p>
Таким образом, тег safe сделает HTML-код интерпретируемым и отобразит HTML-код внутри тега.
Моя проблема в том, что я не могу найти способ сделать замену каждого символа только между тегами и сохранить все как есть.
В основном я пытаюсь заменить символы только в подстроке строки.
Я работаю на python3.10
Есть идеи?
Возможный дубликат this
Вы можете использовать либо cgi.escape, либо html.escape