2013-09-03 4 views
-2

에서 특정 부분을 가져 오기 : 내 코드는 다음과 같습니다이 같은 문자열이 문자열

$html = new DOMDocument(); 


    $html->loadHTML($message); 
    $items = $html->getElementsByTagName('div'); 
    foreach($items as $item) { 
     $headline = array(); 

     if($item->childNodes->length) { 
      foreach($item->childNodes as $i) { 
       $headline[$i->nodeName] = $i->nodeValue; 
      } 
     } 

     $headlines[] = $headline; 
    } 
    foreach ($headlines as $key => $value) { 
    $quote = $value['blockquote']; 
    }. 
print_r($quote); 

output ="this is your message. 
     Your Ticket ID = :68 
     Response ID = :45check that if its not contains any error." 

내가 Ticket ID =:68Response id =:45을 싶어.

내가 blockquote를 인쇄 할 때 위의 text.now를 얻을 때 티켓 ID와 응답 ID를 얻고 싶지만 어떻게 해야할지 모르겠다.

+5

, 즉 당신이 도움이 정규 표현식을 살펴 ... – kratenko

답변

0

당신은 정규 표현식

$var ="this is your message. 
    Your Ticket ID = :68 
    Response ID = :45check that if its not contains any error."; 

$match = array();  
$ticketID = ''; 
$responseID = ''; 

preg_match('/Your Ticket ID = :([0-9]+)/', $var, $match); 
if(count($match) > 0) { 
    $ticketID = $match[0]; 
} 
preg_match('/Response ID = :([0-9]+)/', $var, $match); 
if(count($match) > 0) { 
    $responseID = $match[0]; 
} 

var_dump($ticketID, $responseID); 

출력에이를 수 :

string 'Your Ticket ID = :68' (length=20) 
string 'Response ID = :45' (length=17) 
+0

와우 코드는 great.thanks.i를 작동 일치하는 부분에 대해 혼란스러워합니다. –

+0

정규 표현식을 그냥 전달하면 일치하는 모든 항목이 * $ match * (으)로 이동합니다. – Krasimir

+0

흠, 네가 맞아. 문제는 나랑있다. 나는 preg 매치 기능을 사용하지 않았다. –