Получить текст после ключевого слова и остановиться на новой строке в PHP - PullRequest
0 голосов
/ 17 февраля 2012

У меня есть документ, что строка, которая имеет динамическую дату, но также содержит другие данные, которые мне не нужны.Типичная строка выглядит примерно так:

\n\n  \n     \n  Date: Jan. 25, 2012\n  \n  Location:\n     \n       \n         Ukraine,\n       \n      

Я хотел получить информацию от Date: до \n, поскольку дата отображается в форме над месяцем.День, Год - но также в виде числовых значений, таких как 1.25.2012

Есть ли способ сделать это?

Ответы [ 3 ]

2 голосов
/ 17 февраля 2012
if (preg_match('/Date: ([^\n]+)/', $line, $match)) {
    echo $match[1];
}

$match[1] будет содержать дату, которая соответствует любому совпадению после Date:, которое не является новой строкой.Как разобрать его оттуда, тебе придется решить.

0 голосов
/ 17 февраля 2012

Попробуйте использовать Explode и укажите разделители. и сохранить его в массиве.

0 голосов
/ 17 февраля 2012

Возможно, есть более элегантный способ, но я делал что-то подобное раньше:

<?php
$string="\n\n  \n     \n  Date:\n\n  \n     \n  Date: Jan. 25, 2012\n  \n  Location:\n     \n       \n         Ukraine,\n       \n \n  \n  Location:\n     \n       \n         Ukraine,\n       \n ";


list($trash,$keep)=explode('Data:',$string); 
//or 'Date: ' if you do not want that leading space.
list($keep,$trash)=explode("\n",$keep);

echo $keep;
// Jan. 25, 2012
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...