2013-04-04 4 views
1

У меня есть эта строка внутри абзаца:preg_match() извлечение текста

Сегодня цитата: «Учитесь у вчера, живите на сегодня, надежда на завтра. Главное не останавливаться на допросе.

Мне нужно извлечь это предложение «Учись со вчерашнего дня, живите на сегодня, надейтесь на завтра. Важно не останавливать допрос».

Я не знаком с регулярными выражениями, поэтому я хотел бы немного помочь здесь. Я пробовал:

preg_match("Today's quote is: '[a-zA-Z0-9]'",$response, $matches); 

Конечно же, как я предполагал, что это не работает. Любая помощь будет оценена по достоинству. Заранее спасибо.

Редактировать: Также мне нужно включить «_» и «-» с буквенно-цифровым выражением.

Пример:

$string = "site : '6LcZwNcSAAAAAEcQkyCCSteouAQS9jO7wDrgzvbL', rtl : false, challenge : '03AHJ_Vuv_3y7kY-GQaCyzgrz9ZTv_cFQN_F0jEqOGNq0-3QANrsxJ18oPj4bbhRqPoISIZbqBBdeEXVfpnnVjlTsjoxQugI4j0zB1yRQU1m4wXzFGVRpuRyXJmnJU3d7Ix0nhyO_OBeFCR7v9gXtz_BNN04tSzXxVyvKCExO9I2vcqcIhWJQE8K8'";

Мне нужно соответствовать строке после слова "Вызов". Содержат символы подчеркивания и «-».

+0

Для извлечения почему не substr()? Вы уверены, что вам нужен regEx? – MeNa

+0

Вам просто нужно получить часть текста внутри цитат? – Barmar

+0

@Barmar Мне нужна часть внутри цитаты –

ответ

2

Это должно сделать работу:

$string = "Today's quote is: 'Learn from yesterday, live for today, hope for tomorrow. The important thing is not to stop questioning.'"; 
preg_match('/.*?:.*?\'(.*?)\'/', $string, $m); 
echo $m[1]; // Learn from yesterday, live for today, hope for tomorrow. The important thing is not to stop questioning. 

edit2: После того, как OP показал другой пример. Вот решение для этого редактирования:

$string = "site : '6LcZwNcSAAAAAEcQkyCCSteouAQS9jO7wDrgzvbL', rtl : false, challenge : '03AHJ_Vuv_3y7kY-GQaCyzgrz9ZTv_cFQN_F0jEqOGNq0-3QANrsxJ18oPj4bbhRqPoISIZbqBBdeEXVfpnnVjlTsjoxQugI4j0zB1yRQU1m4wXzFGVRpuRyXJmnJU3d7Ix0nhyO_OBeFCR7v9gXtz_BNN04tSzXxVyvKCExO9I2vcqcIhWJQE8K8'"; 
preg_match_all('/.*?:.*?\'(.*?)\'/', $string, $m); 
var_dump($m); 
+0

Будет ли это работать, даже если оно находится внутри абзаца. Мне нужно убедиться, что у этого есть ». Сегодняшняя цитата:« до этого. » –

+0

@MahmoudElSelimy« внутри абзаца »действительно смутно, я предоставил ответ на текущий шаблон« Сегодняшняя цитата: «{match this} '' Итак, если у вас есть другие требования, просто скажите нам. – HamZa

+0

Я добавил еще один пример выше. Надеюсь, что это поможет. –

Смежные вопросы