sserg82 http://forum.ru-board.com/topic.cgi?forum=13&topic=1306#1 Цитата: вместо [бестолковых и тормозных] регекспов написать скрипт со счётчиком открытых/закрытых тегов. А в конце поста все лишние теги закрыть. IMHO это быстрее регекспов работать будет:
ну а потом т, после подсчета и закрытия незакрытых все равно же регекспами теги на html заменять.
Насчет тормазнутости несогласен.
если горы не городить, очень даже быстро они работают.
А идея насчет закрытия незакрытых мне понравилась.
Только я вот подумал, а зачем нам их закрывать?
Может юзер вовсе не хотел этого.
Может он по ошибке открыл, а мы закрыли, а нужно наоборот удалить лишний открытый.
Поэтому, имхо, за юзера ничего нельзя решать, пусть сам делает как ему нужно.
Для нас главное что? Чтобы форум не перекосило важно чтобы лишних открытых не было, верно?
Ну тогда давай просто посчитаем сколько есть закрытых тегов, и тогда будем обрабатывать отрытых именно столько, сколько есть закрытых. Ох, ну и высказался.. надеюсь поймешь.
Вообщем вот так, например
Код: [no]
$count =($text =~ s#\[/b]#</b>#ig);#Обрабатываем закрытые, и заодно считаем их.
$text =~ s#(\
)#<b>#i for (1..$count);#Обрабатываем открытые, столько раз, сколько есть закрытых.
[/no]