Ok, j'ai une page avec quelque chose comme ça (j'ai ajouté 'scrapehere' chaîne pour faciliter la navigation, cette page n'est pas 100% html correct et il a deux champs identiques avec . différentes valeurs non, je ne peux pas le réparer parce qu'il est cm que je utilise et je pense que ce serait trop compliqué pour moi de faire):scrape & regex match ne fonctionne pas
scrapehere<input type="hidden" id="_someid" name="_somename" value="value"/>
J'essaie d'obtenir la valeur cachée. J'ai donc écrit ce script:
<?php
$data = file_get_contents('scrape-test.html');
$regex = '/scrapehere<input type="hidden" id="_someid" name="_somename" value="(.+?)"/';
preg_match($regex,$data,$match);
var_dump($match);
echo $match[1];
?>
Mais au lieu de mon script de valeur Sorties ceci:
array(2) { [0]=> string(74) "scrapehere string(5) "value" } value
Quel est le problème avec elle, pourquoi ne pas juste valeur d'impression? L'a-t-il déjà sauvé quelque part mais mon écho est faux? Je veux que la sortie soit juste value
.
Je pense que quelque chose s'est mal passé avec le signe
Thomas
peut-être que c'est ... alors comment puis-je résoudre ce problème? des idées? – Phil
Vous voulez probablement aussi ([^ "] *) au lieu de" valeur " –