[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Регулярка выделения дескрипшена
Гость_Dima
Доброго!
Необходимо из текста в дескрипшен вытянуть 10 первых слов.Самым простым образом составил регепс:
$a = 'sadsa asdsad sadsa asaSA qdsfds dsfdsfsd dsfdsfsd dsfdsf';
echo preg_replace('/^\S+\s+\S+\s+\S+\s+/','$1...',$a);


Соответственно в описание попадают первые три "слова".А если понадобится выделить сто слов, то выражение растянется на многие киллометры...
Как переписать более элегантно?



Спустя 28 минут, 27 секунд (7.06.2011 - 15:36) DedMorozzz написал(а):
/^\S+\s+\S+\s+\S+\s+/ = /^(\S+\s+){3}/
При пожаре - разбить стекло. 3 заменить на 100

Спустя 29 минут, 20 секунд (7.06.2011 - 16:05) Гость_Dima написал(а):
Благодарю

Спустя 2 часа, 31 минута, 55 секунд (7.06.2011 - 18:37) walerus написал(а):
А не проще сделать через
$array_keyword = explode ( ' ', trim($a) ); 
$result = array_slice( $array_keyword, 0, $count ); // Где $count - кол-во слов
print_r($result);


Чем замарачиваться с регулярками...
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.