当前位置:Gxlcms > PHP教程 > 正则如何匹配换行前及其换行后内容?

正则如何匹配换行前及其换行后内容?

时间:2021-07-01 10:21:17 帮助过:2人阅读

现有数据一份,为:

已建成的电信管道、电信杆路、通信铁塔等电信设施的电信业务经营者应当将空余资源以(  )等方式向有需求的其他电信业务经营者开放。
A.出租 2
借款
B.出售
C.资源互换
D.抵押
E.
质押

我需要从里面得到的结果为:

1、A.出租 2
借款

2、B.出售

3、C.资源互换
4、D.抵押

5、E.
质押

我遇到的难点为:

5、E.
质押

这种情况,这个的我想取出来成为:“5、E.质押”;而不需要那个换行~
取得的结果是("A."到"B."),("B."到"C.")...等等的数据

============================
按一楼的说法,我现在把我整个PHP的贴出来吧。

    //拆分选项列表
    public function datalist($data){
        $preg = '/[A-E]\.\s?.*[\w\W]?/';
        preg_match_all($preg,$data,$results);
        foreach($results[0] as $data){
            $result[] = trim($data);
        }   
        return $result;
    }

已经解决,谢谢大家。
其实很简单,但就是想不出来,唉~:
[A-E].[^B-E]*

这个问题已被关闭,原因:

回复内容:

现有数据一份,为:

已建成的电信管道、电信杆路、通信铁塔等电信设施的电信业务经营者应当将空余资源以(  )等方式向有需求的其他电信业务经营者开放。
A.出租 2
借款
B.出售
C.资源互换
D.抵押
E.
质押

我需要从里面得到的结果为:

1、A.出租 2
借款

2、B.出售

3、C.资源互换
4、D.抵押

5、E.
质押

我遇到的难点为:

5、E.
质押

这种情况,这个的我想取出来成为:“5、E.质押”;而不需要那个换行~
取得的结果是("A."到"B."),("B."到"C.")...等等的数据

============================
按一楼的说法,我现在把我整个PHP的贴出来吧。

    //拆分选项列表
    public function datalist($data){
        $preg = '/[A-E]\.\s?.*[\w\W]?/';
        preg_match_all($preg,$data,$results);
        foreach($results[0] as $data){
            $result[] = trim($data);
        }   
        return $result;
    }

已经解决,谢谢大家。
其实很简单,但就是想不出来,唉~:
[A-E].[^B-E]*

你把你写的正则发上来看看 正则中有个贪婪模式 估计跟这个有关吧

人气教程排行