Простая манипуляция PHP - PullRequest
0 голосов
/ 09 июля 2011

У меня есть строка с несколькими строками. Для этого примера моя строка будет такой:

Name:Jaxo
Description:A person on Stackoverflow
Question:$this->questionName();

Как я могу получить, скажем, «Описание»? Мне нужно все после описания, т.е. «Человек на Stackoverflow». Я пробовал такое регулярное выражение, но оно не работает: /^Description:(.+?)\n/i

Любая помощь очень ценится!

Спасибо

-Jaxo

Ответы [ 3 ]

1 голос
/ 09 июля 2011

Это должно работать для вас:

if (preg_match('/Description:(.+)/im', $subject, $regs)) {
    $result = $regs[1];
} else {
    $result = "";
}

Где $result - это Имя описания.

0 голосов
/ 09 июля 2011

Попробуйте это:

$a="Name:Jaxo
Description:A person on Stackoverflow
Question:\$this->questionName();"; 

preg_match("/Description:([^\n]+)/i",$a,$m);
print_r($m);

Выход:

Array ( [0] => Description:A person on Stackoverflow [1] => A person on Stackoverflow ) 
0 голосов
/ 09 июля 2011

Если есть символ новой строки, разделяющий каждую часть метки, которую вы можете взорвать.

$array = explode("\n",$string); // separate params
$desc = explode(":",$array[1]); // separate description

Таким образом, вы можете получить любой из параметров.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...