↓
 ↑
Регистрация
Имя/email

Пароль

 
Войти при помощи
StragaSevera
17 сентября 2015
Aa Aa
#рубиновый_поезд
#айтишный_быт
#проект_fanficmd
Обнаружил нетривиальные свойства тегов Фанфикса.
Например, теги выравнивания можно ставить в середине предложения, и они действуют не до закрывающего тега, а до СЛЕДУЮЩЕГО ОТКРЫВАЮЩЕГО тега выравнивания.
Товарищ ReFeRy, это нормальное поведение? Можно его вписывать в спецификацию?
17 сентября 2015
9 комментариев из 14
ReFeRy Онлайн
Я не проверяю правильность порядка вложенности тегов. Если открывающие и закрывающие теги стоят подряд и перепутаны местами, это исправляю. А если они разнесены, то даже не пытаюсь. У меня нет анализа тегов с древовидным разбором, чисто регулярки. Может и на них это можно сделать, но я не делал.

Хотя приведен странный кусок - это именно вывод после сохранения текста? Или вручную написанный пример?
Нет, это продукт разбора следующего:
тест <b>ляля
<i>многострочных</b>
тегов</i>

Понятно. Я-то пытаюсь сделать древовидку, чтобы было удобнее в разные форматы конвертировать. Видимо, придется в ручном режиме при обнаружении фиксить.
Кстати, регулярки же вроде могут заглядывать в будущее/прошлое, не?
ReFeRy Онлайн
Могут. Они вообще очень много чего могут - все освоить не так-то и просто, особенно самостоятельно :)
*улыбнулся и кивнул*
ReFeRy Онлайн
Допилил пару перестановок:

1. Сделал корректную обработку переноса строки внутри тегов жирного и курсива (расставляет новые теги в конце и в начале строки).

2. Сделал автоматическое исправление ошибочного порядка закрытия тегов жирного и курсива внутри одной строки.

P.S. Срабатывает в момент сохранения изменений в главе, в предпросмотре теперь будут косяки.
ReFeRy Онлайн
<b>ляля
<i>многострочных</b>
тегов</i>

=

<b>ляля</b>
<b><i>многострочных</i></b>
<i>тегов</i>
О. Ня.
Благодарю ^_^
*думает, сворачивать ли написание перестановкоустойчивого парсера, или фикбук таким тоже чудит*
ReFeRy Онлайн
В чем проблема проверить?)

Вот, что получается на фикбуке:

<div class="public_beta">
<b>ляля<br/>
<i>многострочных</b><br/>
тегов</i><br/>
</div>
Проблема в лени =-)
Благодарю-с.
ПОИСК
ФАНФИКОВ







Закрыть
Закрыть
Закрыть