Как научить Drupal распознавать в тексте ссылки зоны рф

Главные вкладки

Аватар пользователя ii ii 7 марта 2012 в 14:47

Как парсятся ссылки в ядре:

<?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);
?>

Не работает.

Комментарии

Аватар пользователя Tier_WerWolf Tier_WerWolf 7 марта 2012 в 14:55

костыльный способ, но работает 100%.
а-яА-Я
замени на буквы алфавита, не используй диапазон.

АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя