我有一个包含多行的字符串。对于此示例,我的字符串将是:
Name:Jaxo
Description:A person on Stackoverflow
Question:$this->questionName();
我怎么能得到'描述'?我需要描述后的所有内容,即“Stackoverflow上的人”。我试过像这样的正则表达式,但它不起作用:/^Description:(.+?)\n/i
非常感谢任何帮助!
由于
-Jaxo
答案 0 :(得分:1)
这应该适合你:
if (preg_match('/Description:(.+)/im', $subject, $regs)) {
$result = $regs[1];
} else {
$result = "";
}
其中$result
是描述名称。
答案 1 :(得分:0)
如果标签的每个部分都有换行符,则可能会爆炸。
$array = explode("\n",$string); // separate params
$desc = explode(":",$array[1]); // separate description
这样你就可以获得任何参数。
答案 2 :(得分:0)
试试这个:
$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 )