Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/227.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 我应该如何以正确的格式进行预匹配?_Php_Formatting_Preg Match - Fatal编程技术网

Php 我应该如何以正确的格式进行预匹配?

Php 我应该如何以正确的格式进行预匹配?,php,formatting,preg-match,Php,Formatting,Preg Match,我有赛前问题。如果xml文本如下所示,我应该预先匹配 <File label="asd 480p" type="lol" rate="1500" resolution="854x480">ValueIwant</File> ValueIwant 还是这个 <File label="720p" default="1">ValueIwant</File> ValueIwant 现在我使用这样的格式 preg_match("'<File l

我有赛前问题。如果xml文本如下所示,我应该预先匹配

<File label="asd 480p" type="lol" rate="1500" resolution="854x480">ValueIwant</File>
ValueIwant
还是这个

<File label="720p" default="1">ValueIwant</File>
ValueIwant
现在我使用这样的格式

preg_match("'<File label=\"(?:720|576|cat|asd 480p).{1,50}>(.*?)</File>'si", $streamdata, $streamurl);

preg\u match(“”
preg\u match(“”您通常最好使用XML解析器而不是preg\u match来处理XML。例如:

$xmlDoc = new DOMDocument();
$xmlDoc->loadXML( '<xml>
    <File label="asd 480p" type="lol" rate="1500" resolution="854x480">ValueIwant</File>
    <File label="720p" default="1">ValueIwant</File>
    </xml>' ); 

$searchNode = $xmlDoc->getElementsByTagName( "File" ); 

foreach( $searchNode as $searchNode ) {
    $label = $searchNode->getAttribute('label');

    $value = $searchNode->nodeValue;

    echo "$label - $value<br>";
} 
$xmlDoc=newDOMDocument();
$xmlDoc->loadXML($xmlDoc)
价值万特
价值万特
' ); 
$searchNode=$xmlDoc->getElementsByTagName(“文件”);
foreach($searchNode作为$searchNode){
$label=$searchNode->getAttribute('label');
$value=$searchNode->nodeValue;
回显“$label-$value
”; }
将输出:

asd 480p-价值旺
720p-价值旺

$xmlDoc = new DOMDocument();
$xmlDoc->loadXML( '<xml>
    <File label="asd 480p" type="lol" rate="1500" resolution="854x480">ValueIwant</File>
    <File label="720p" default="1">ValueIwant</File>
    </xml>' ); 

$searchNode = $xmlDoc->getElementsByTagName( "File" ); 

foreach( $searchNode as $searchNode ) {
    $label = $searchNode->getAttribute('label');

    $value = $searchNode->nodeValue;

    echo "$label - $value<br>";
}