parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

возможно. но под вечер красивое решение в голову не приходит...

Misha v.3 18.02.2004 21:35 / 18.02.2004 21:41

в лоб:
@match_items[tag;text;attr]
^if(def $text){
	<$tag^if(def $attr){ $attr}>^text.match[^^\s*(.+)\s*^$][gm]{<li>$match.1</li>}</$tag>
}

@main[]
$str[^[list type="ul"^]
    list 1
    list 2
    list 3
    ...
^[/list^]
^[list^]
    list 1
    list 2
    list 3
    ...
^[/list^]]

<pre>
^taint[html][
	^str.match[\^[(list)(\stype="(ul)")?\^](.+?)\^[/\1\^]][gi]{^match_items[ul;$match.4;^if(def $match.3){class="$match.3"}]}
]
</pre>