Forum Webscript.Ru

Программирование => PHP => Тема начата: от 06 Ноября 2001, 11:40:09

Название: RegEX
Отправлено: от 06 Ноября 2001, 11:40:09
Здраствуйте!

nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn

Дизайн от такого расширяется, как с помощью регулярных выражений исправить это?
$text=ereg_replace("([^ \\t\\n\\t]{15})[^ \\t\\n\\t]*","\\\\1",$text);
вот так обрежется на 15 символе. А как сделать чтоб после 15 символа ставился тег
?
Название: RegEX
Отправлено: Макс от 06 Ноября 2001, 14:35:08
Недавно на fido7.ru.php такое решение вычитал:

function break_long_words($source_text,$lng)
{
   $regExp=\'/(\\S{\'.$lng.\',})/ei\';
   $res_text=preg_replace($regExp,"wordwrap(\'\\\\1\',$lng,\'\\n\',1)",$source_text);
   return $res_text;
}

$lng - через сколько символов ставить \\n
$source - искомая строка

можешь \\n заменить на
, хотя с \\n тоже все нормально работает
Название: RegEX
Отправлено: от 06 Ноября 2001, 15:20:48
Спасибо
Название: А если усложнить
Отправлено: nobody от 10 Декабря 2001, 07:00:43
А если нужно усложнить гдето вот так:
1.1 Если $regExp попадает в слово:
1.2 То нужно что бы была проверка сколько символов до конца слова, если больше 5, то ищем начало слова и если до начала слова больше 5 символов то режим там где есть?

О как надуманно :)
Название: RegEX
Отправлено: Макс от 10 Декабря 2001, 14:31:53
Этот regexp для разбиения монолитного текста - то есть текста без пробелов и символов перевода строки. На простой текст с пробелами и переводами строки он вообще не реагирует.
То есть если например есть текст :

$a="Мои познания PHP начались не более месяца тому назад"
echo break_long_words($a,20);

то текст не будет изменен, потому что в нем нет фрагмента строки более 20 символов без пробелов. А если бы написал так:

$a="Мои познания PHP начались не более месяца тому назад"
echo break_long_words($a,4);

то получил бы такой результат:
Мои позн
ания PHP нача
лись не боле
е меся
ца тому наза
д


Если ты не понял ничего из того что я тут написал - просто поюзай эту функцию, думаю разберешься.
Название: RegEX
Отправлено: nobody от 11 Декабря 2001, 08:43:00
сенькс...
пошел юзать....