如何仅返回匹配的部分?

时间:2011-06-11 02:43:01

标签: php

$string='this dog is done';
preg_match('/^this dog is [^.]+/',$string,$m);
echo $m[0]."\n"; // prints "this dog is done"

如何在没有其余字符串的情况下完成“完成”?

1 个答案:

答案 0 :(得分:5)

来自documentation

  

如果提供了匹配,那么它将填充搜索结果。 $matches[0]将包含与完整模式匹配的文本,$matches[1]将具有与第一个捕获的带括号的子模式匹配的文本,依此类推。

所以:

$string='this dog is done';
preg_match('/^this dog is ([^.]+)/',$string,$m);
echo $m[1]."\n";