13800000001|!|你好,快递【京东】|^|13800000002|!|你好,快递【顺丰】如何正则提取?

13800000001|!|你好,快递【京东】|^|13800000002|!|你好,快递【顺丰】

我的需求是每条信息分为手机号和内容,内容包括最后 【】 包含的签名,每条信息用 |^| 分割,手机和内容用 |!| 分割,请问 php 怎么提取出每条信息和每条中的数据?

阅读 4.5k
2 个回答

先explode|!|得到每一条单独的消息,然后循环处理每一条

<?php
$str = "13800000001|!|你好,快递【京东】|^|13800000002|!|你好,快递【顺丰】";
$msg = explode("|^|",$str);
foreach($msg as $value)
{
    print_r(explode("|!|",$value));
}
?>

输出

Array
(
    [0] => 13800000001
    [1] => 你好,快递【京东】
)
Array
(
    [0] => 13800000002
    [1] => 你好,快递【顺丰】
)
推荐问题