2012-03-10 68 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>'; 
?> 
相关问题