Процессору на вход подается одна строка — параграф текста. На выходе должен быть HTML-код этого параграфа.
Текст окруженный с двух сторон одинарными символами подчерка должен помещаться в HTML-тег em вот так:
Текст <em>окруженный с двух сторон</em> одинарными символами подчерка должен помещаться в HTML-тег em вот так:
Любой символ можно экранировать, чтобы он не считался частью разметки. _Вот это_, не должно выделиться тегом <em>.
Двумя символами — должен становиться жирным с помощью тега <strong>.
Внутри двойного выделения одинарное тоже работает.
Но не наоборот — внутри одинарного __двойное__ не работает.
Одинарное внутри одинарного выделения и двойное __внутри двойного__ выделения — не работают.
Подчерки внутри слова c цифрами_12_3 не считаются выделением и должны оставаться символами подчерка.
__непарные _символы не считаются выделением.
За подчерками, начинающими выделение, должен следовать непробельный символ. Иначе эти_ подчерки_ не считаются выделением и остаются просто символами подчерка.
Подчерки, заканчивающие выделение, должны следовать за непробельным символом. Иначе эти _подчерки не считаются окончанием выделения и остаются просто символами подчерка.
Пересечение границ не допускается, в этом случае символ не считается тегом выделения, а печатается символом, например:
__начало-стиля1 _начало-стиля2 конец-стиля1__ конец-стиля2_
даст текст
начало-стиля1 _начало-стиля2 конец-стиля1 конец-стиля2_