繁体   English   中英

如何获得发现的价值,而不是取代? 使用preg_replace php

[英]how to get the value found, instead of replacing? using preg_replace php

如何获得发现的价值,而不是取代?

echo $response=$htmlParserA->find("/tbody/tr/td",5)->plaintext."<br>";
$str=preg_replace("/[0-9][0-9][0-9]/","",$response);
echo $str;

响应:
在HTTP / 1.1 301永久移动之前
HTTP / 1.1永久移动之后

如何获得301?

回答:

$str=preg_match("/[0-9][0-9][0-9]/",$response,$asd); 
echo $asd[0];

preg_match将满足您的要求:

$input = "HTTP/1.1 301 Moved Permanently";
$matches = array();
$found = preg_match("/\d{3}/", $input, $matches);
if($found)
{
    echo "Code = " . $matches[0];
}

如果需要,可以使模式更严格:

$found = preg_match("/HTTP\/1\.1\s(\d{3})/", $input, $matches);
if($found)
{
    echo "Code = " . $matches[1];
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM