はPHP

2017-04-02 6 views
-1
私はここにあり、私は に必要なこの後、感謝のため xPathで、場合 PHP機能を使用して style="background-color:#4bbedd;vertical-align:middle;"から値 #4bbeddを取得するには助けが必要

に「言葉」「言葉」の前または後に文字列を取得する方法についてHTMLコードですこのはPHP

HTMLコード

<!DOCTYPE html> 
<html> 
<head> 
     <title></title> 
</head> 
<body> 
    <div class="pickerContainer" data-reactid=".0.1.1.1.3.0.0.1.1.1.1"> 
     <div class="ColorPicker" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0"> 
      <a class="ui small interactive circular label" style="background-color:#4bbedd;vertical-align:middle;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Aquatic Blue"> 
       <span class="toolTip" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Aquatic Blue.0">Aquatic Blue</span> 
       <i class="checkmark icon" style="display:none;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Aquatic Blue.1"></i> 
      </a> 
      <a class="ui small interactive circular label" style="background-color:#CCCCCC;vertical-align:middle;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Ash"> 
       <span class="toolTip" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Ash.0">Ash</span> 
       <i class="checkmark icon" style="display:none;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Ash.1"></i> 
      </a> 
      <a class="ui small interactive circular label" style="background-color:#999999;vertical-align:middle;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Athletic Heather"> 
       <span class="toolTip" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Athletic Heather.0">Athletic Heather</span> 
       <i class="checkmark icon" style="display:none;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Athletic Heather.1"></i> 
      </a> 
      <a class="ui small interactive circular label" style="background-color:#F27EB2;vertical-align:middle;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Azalea"> 
       <span class="toolTip" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Azalea.0">Azalea</span> 
       <i class="checkmark icon" style="display:none;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Azalea.1"></i> 
      </a> 
      <a class="ui small interactive circular label" style="background-color:#000000;vertical-align:middle;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Black"> 
       <span class="toolTip" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Black.0">Black</span> 
       <i class="checkmark icon" style="display:none;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Black.1"></i> 
      </a> 
     </div> 
    </div> 
</body> 
</html> 
+0

すぐに解決策を尋ねるのではなく、すでに試したことの例を示してください。 – Augwa

+0

'preg_match'を試してみてください。 – Jigar

+0

これは 'substring-before(substring-after((// div/div [@ class =" ColorPicker "]/a/@スタイルの" background-color: ")、"; ") ')' –

答えて

1

PHP code demo

<?php 

$object = new DOMDocument(); 
$object->loadHTML('<!DOCTYPE html> 
<html> 
<head> 
     <title></title> 
</head> 
<body> 
    <div class="pickerContainer" data-reactid=".0.1.1.1.3.0.0.1.1.1.1"> 
     <div class="ColorPicker" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0"> 
      <a class="ui small interactive circular label" style="background-color:#4bbedd;vertical-align:middle;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Aquatic Blue"> 
       <span class="toolTip" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Aquatic Blue.0">Aquatic Blue</span> 
       <i class="checkmark icon" style="display:none;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Aquatic Blue.1"></i> 
      </a> 
      <a class="ui small interactive circular label" style="background-color:#CCCCCC;vertical-align:middle;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Ash"> 
       <span class="toolTip" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Ash.0">Ash</span> 
       <i class="checkmark icon" style="display:none;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Ash.1"></i> 
      </a> 
      <a class="ui small interactive circular label" style="background-color:#999999;vertical-align:middle;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Athletic Heather"> 
       <span class="toolTip" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Athletic Heather.0">Athletic Heather</span> 
       <i class="checkmark icon" style="display:none;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Athletic Heather.1"></i> 
      </a> 
      <a class="ui small interactive circular label" style="background-color:#F27EB2;vertical-align:middle;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Azalea"> 
       <span class="toolTip" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Azalea.0">Azalea</span> 
       <i class="checkmark icon" style="display:none;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Azalea.1"></i> 
      </a> 
      <a class="ui small interactive circular label" style="background-color:#000000;vertical-align:middle;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Black"> 
       <span class="toolTip" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Black.0">Black</span> 
       <i class="checkmark icon" style="display:none;" data-reactid=".0.1.1.1.3.0.0.1.1.1.1.0.$Black.1"></i> 
      </a> 
     </div> 
    </div> 
</body> 
</html>'); 
$xPathObject= new DOMXPath($object); 
$result=$xPathObject->query("/html/body/div/div/a[1]"); 
$desiredResult=""; 
foreach($result as $data) 
{ 
    foreach($data->attributes as $attribute) 
    { 
     if($attribute->name=="style") 
     { 
      $desiredResult= explode(";",explode(":", $attribute->value)[1])[0]; 
     } 
    } 
} 
echo $desiredResult;