2012-03-10 104 views
0

我不能找到解決如何正確讀出的消息,這是消息的模型:有人可以幫我preg_match?

209937 
Maks) Message 

11:52 
Tedy...Hi 12:01 
Maks)Hello12:07 
Tedy...How are you? 

Update Messages 
Delete all messages 
MyPage Messages 

我需要檢查,如果發送消息,消息的模式是:第一行發送的時間,下一行是

暱稱和消息,也下一條消息的時間提前任何提示

[hh:mm1] 
[Nickname1][Message1][hh:mm2] 
[Nickname2][Message2][hh:mm3] 
[Nickname1][Message3] 

感謝。

+0

看着消息,格式似乎不容易理解。 – 2012-03-10 20:24:53

+0

我想我可以通過閱讀[暱稱]後查看消息,但是我對preg_match的知識太差(( – Tedy 2012-03-10 20:30:24

+0

)如果語言是正則正則表達式應該能夠解析它。 – 2012-03-10 20:33:09

回答

0
<?php 
$sample_text = <<<EOF 
209937 
Maks) Message 

11:52 
Tedy...Hi 
12:01 
Maks)Hello) 
12:07 
Tedy...How are you? 

Update Messages 
Delete all messages 
MyPage Messages 
EOF; 

preg_match_all('/(?\'time\'(\d{1,2}\:\d{2}))[^\w]*(?\'who\'(\w+))(?\'what\'([^\d]+))/', $sample_text, $messages); 

echo '<pre>' . print_r($messages, true) . '</pre>'; 
?> 
相關問題