parser

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

 

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

А может в парсере уже есть механизмы для решения...

MadCow 05.02.2008 02:16

Мне кажется, что при возникновении очередной задачи, имеет смысл сначала поискать решения с помощью встроенных средств.

Хотя, до этого хотелось бы узнать, для чего вообще это преобразование нужно?

------
В данном случае мне кажется, что оператор ^taint[] - как раз то, что надо. Просто для этого нужно будет сделать уловку:
	$str[jshjhd <sjhadjsh yh="s"> hshj<sjsjd </ksdkj> <br/]
		
	$rep[^table::create{f	t
<	^taint[html][<]
>	^taint[html][>]}]
	
#	Делаем все скобки "грязными"	
	$str[^str.replace[$rep]]

#	"Чистим" теги	
	$str[^str.match[<(\/?[^^>]+)>][g]{<$match.1>}]

#	Делаем экспорт, чтобы произошла замена.
	^str.save[tags.txt]

#	Теперь tags.txt содержит как раз то, что нам надо.

	$f[^file::load[text;tags.txt]]
	<p>^untaint{$f.text}</p>
Хочу заметить, что условие отбора тегов возможно стоит подкорректировать, т.к. даже в примере теги будут не совсем корректны.

Интересно мнение о подобных решениях.