Как парсятся ссылки в ядре:
<?php
function _filter_url($text, $format) {
//...
// Match absolute URLs.
$text = preg_replace_callback("`(<p>|<li>|<br\s*/?>|[ \n\r\t\(])((http://|https://|ftp://|mailto:|smb://|afp://|file://|gopher://|news://|ssl://|sslv2://|sslv3://|tls://|tcp://|udp://)([a-zA-Z0-9@:%_+*~#?&=.,/;-]*[a-zA-Z0-9@:%_+*~#&=/;-]))([.,?!]*?)(?=(</p>|</li>|<br\s*/?>|[ \n\r\t\)]))`i", '_filter_url_parse_full_links', $text);
//...
return $text;
}
?>
заменил регулярку на (заменив a-zA-Z на a-zA-Zа-яА-ЯёЁ)
<?php
$text = preg_replace("`(<p>|<li>|<br\s*/?>|[ \n\r\t\(])((http://|https://|ftp://|mailto:|smb://|afp://|file://|gopher://|news://|ssl://|sslv2://|sslv3://|tls://|tcp://|udp://)([a-zA-Zа-яА-ЯёЁ0-9@:%_+*~#?&=.,/;-]*[a-zA-Zа-яА-ЯёЁ0-9@:%_+*~#&=/;-]))([.,?!]*?)(?=(</p>|</li>|<br\s*/?>|[ \n\r\t\)]))`i", '1230', $text);
?>
Не работает.
Комментарии
костыльный способ, но работает 100%.
а-яА-Я
замени на буквы алфавита, не используй диапазон.
АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя
работает )) спасибо
) нет проблем, обращайся