[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Нужна помощь с preg_match
natalia2
Всем форумчанам привет!

Нужна ваша помощь.

Помогите, пожалуйста, кто знает.

Вопрос:

Вот, что бы хотелось.

Есть такой скрипт:

$TEXT=<<<TEXT
.week12-active-v, .day-active-v, .week-active { font-weight: bold; }
.unit2-rating a.r51-unit:hover {width: 51px;}
.highslide-display-block7 { display: block; }
TEXT;

Как составить правильно шаблон для функции preg_match?
Чтобы на выходе получилось:

.week12-active-v
.day-active-v
.week-active
.unit2-rating
.r51-unit
.highslide-display-block7



Ну, то есть, чтобы были отобраны только слова с передней точкой и всё (без запятых и без впереди слов не было до точки других букв (типа: a.r51-unit), а также без знака ":").

Как это можно реализовать? Помогите, пожалуйста.




Спустя 4 часа, 1 минута, 31 секунда (18.10.2011 - 11:35) imbalance_hero написал(а):
Регулярное выражение.
Порядок выборки: перенос, потом перечень допустимых символов и пробел включительно, таким образом можно отобрать все, кроме первой записи, для первой - без переноса, но поиск от начала строки.

А есть твои попытки такое реализовать? Показывай свою регулярку.

Спустя 36 минут, 59 секунд (18.10.2011 - 12:12) natalia2 написал(а):
Конечно, прежде чем написать сюда, были проведены несколько десятков экспериментов. То есть функция писалась, затем проверялась и снова переписывалась. Было много вариантов, но всё-равно, что-то не получалось.

По вашей версии, рег. шаблон должен быть таким:
preg_match('/\n.([a-z0-9])(\s|,|:)/', $H,$res);


Или нет?

Спустя 46 секунд (18.10.2011 - 12:13) natalia2 написал(а):
Вместо смайлика должно быть двоеточие.

Спустя 4 минуты, 26 секунд (18.10.2011 - 12:17) imbalance_hero написал(а):
natalia2
. - любой символ, когда он идёт не в переборе, его как минимум надо экранизировать. В квадратных скобках не хватает "-". Так же не указано, количество этих символов.
Ты применяешь жадный поиск, надо его отключать либо *?, либо куда проще, использовать модификатор U

Спустя 9 минут (18.10.2011 - 12:26) Winston написал(а):
$TEXT=<<<TEXT
.week12-active-v, .day-active-v, .week-active { font-weight: bold; }
.unit2-rating a.r51-unit:hover {width: 51px;}
.highslide-display-block7 { display: block; }

TEXT;

preg_match_all("#(\.[a-z\d-]+)#i", $TEXT, $match);

echo '<pre>'.print_r($match[1], 1).'</pre>';

Спустя 12 минут, 30 секунд (18.10.2011 - 12:39) natalia2 написал(а):
imbalance_hero Спасибо за советы.


Winston Огромное спасибо Вам, Ваша версия шаблона сработала.
Быстрый ответ:

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