2011-09-13 50 views
0

一直試圖學習正則表達式在php中的工作方式,正則表達式PHP獲取單詞之間的內容

我試着讓半冒號後的信息,但在未來關鍵字之前:開始

這裏是我的文字,我已經成功地使用正則表達式第一剝離出來的HTML。

標題:2012款寶馬M5概念地點:慕尼黑 - 德國 參考:091Comments:現在25年來,中 至高無上的駕駛舒適迷人的組合溢價經歷上 midrangeFrom:吉姆·史密斯[email protected] .au 0987541231

上面的文字實際上只是一個示例,但其格式與我的文本完全相同。

我需要的是這樣的:

  1. 標題= 2012款寶馬M5概念

  2. 位置=德國慕尼黑

  3. 參考= 091

  4. 評論= 25年現在,卓越的駕駛舒適性在高端中高端車型中所體驗到的迷人組合

  5. 從=吉姆·史密斯[email protected] 0987541231

有了最後的結果5.:我可以寫一些額外的提取電子郵件,但如果有人可以幫助名爲的提取和也的電話號碼,可能並不總是準確,很多數字,我將非常感激感激:)

到目前爲止,我有這個順利拿到refernce號:

if (preg_match("/Reference:[0-9]{3}/", $decodedmessage, $matches_id)) 
{ 
echo "Reference=".preg_replace("/Reference:/","",$matches_id[0]); 
} 

在此先感謝 強尼

回答

0

下面是一些代碼,你可以使用:

preg_match_all('/(\w+):([^:]+)(?=\s)/', '{{your data}}', $arr); 

輸出看起來是這樣的:

Array 
(
    [0] => Array 
     (
      [0] => Title:2012 BMW M5 Concept 
      [1] => Location:Munich - Germany 
      [2] => 091Comments:For 25 years now, the fascinating combination of supreme driving comfort experienced in a premium upper 
      [3] => midrangeFrom:Jim Smith [email protected] 
     ) 

    [1] => Array 
     (
      [0] => Title 
      [1] => Location 
      [2] => 091Comments 
      [3] => midrangeFrom 
     ) 

    [2] => Array 
     (
      [0] => 2012 BMW M5 Concept 
      [1] => Munich - Germany 
      [2] => For 25 years now, the fascinating combination of supreme driving comfort experienced in a premium upper 
      [3] => Jim Smith [email protected] 
     ) 

) 
+0

喜雅各布 - 感謝。我如何輸出該數組?我需要echo $ arr [0]?我知道這聽起來像一個愚蠢的問題,但它對我來說是全新的。 – jonnypixel

+0

我懂了print_r($ arr); 但你是如何得到它打印頁面?我在一條很長的路線上,我只是想讓它更清晰一些,然後我開始進行下一步處理 – jonnypixel

+0

@jonny看一看頁面源代碼。 (右鍵單擊>查看源代碼)或將其包裝在「

 tag
」中 –

相關問題