PHP简单字符串操作

时间:2011-07-08 20:46:25

标签: string parsing

我有一个包含多行的字符串。对于此示例,我的字符串将是:

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

我怎么能得到'描述'?我需要描述后的所有内容,即“Stackoverflow上的人”。我试过像这样的正则表达式,但它不起作用:/^Description:(.+?)\n/i

非常感谢任何帮助!

由于

-Jaxo

3 个答案:

答案 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 )