в mht и msg файлах (вообще, это наверняка более широкий стандарт, просто я с практической стороны подошел) есть строчка (пример):
Code: Select all
boundary=----------Geas9ihHb6PUT2zYTdmQ2F
То, что после знака = это индикатор границы
Этой границей отбиваются вложенные элементы, вот только перед самой границей вставляется два дефиса --
то есть из этой строки уже получается
Code: Select all
------------Geas9ihHb6PUT2zYTdmQ2F
А к завершающей границе (отбивке) приписывают еще два дефиса
Code: Select all
------------Geas9ihHb6PUT2zYTdmQ2F--
Вот два вида границ я и хочу выделять.
Ваше задание выделения выделяет только блок
в начале каждого вида границ, и надписи вроде
Code: Select all
------- Прикрепленное сообщение ----
которые изначально выделять не собирался.
Вообще впоследствии было бы неплохо как-то в fold сделать так, чтобы еще и в codefold можно что-то передать из описания того, что лежит между каждой парой границ:
Code: Select all
------------Geas9ihHb6PUT2zYTdmQ2F
Content-Disposition: inline; filename=2012_phenomenon.htm
Content-Type: text/html; charset=UTF-8; name=2012_phenomenon.htm
Content-ID: <op.mhtml.1356040018078.d19f8b423114d3d0@192.168.0.3>
Content-Location: http://en.wikipedia.org/wiki/2012_phenomenon
Content-Transfer-Encoding: Quoted-Printable
Всё это нужно для удобства просмотра и редактирования сохраненных писем и страниц когда нужно повыкидывать оттуда какие-то вложения. Без цепляния за глаз подсветкой часто промахиваюсь.
Может это как-то регулярными выражениями можно сделать, просто я в них пока плохо разбираюсь, надеялся на проверенные временем способы, тем более, что вроде в других coder'ах бывает подобное, а у меня почему-то не работает.
Я правила видел так:
-- потом много разного из цифр, букв и дефисов до конца строки
-- потом много разного из цифр, букв и дефисов до -- после которых перенос строки
Как сделать так, чтобы правила не пересекались и вообще как это задать, чтобы проверялось наличие двух дефисов в начале и конце или только в начале, а в конце перенос строки?