>백엔드 개발 >PHP 튜토리얼 >正则如何匹配换行前及其换行后内容?

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

WBOY
WBOY원래의
2016-06-06 20:48:191553검색

现有数据一份,为:

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

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

<code>1、A.出租 2
借款

2、B.出售

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

5、E.
质押
</code>

我遇到的难点为:

5、E.
质押

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

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

<code class="lang-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;
    }
</code>

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

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

回复内容:

现有数据一份,为:

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

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

<code>1、A.出租 2
借款

2、B.出售

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

5、E.
质押
</code>

我遇到的难点为:

5、E.
质押

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

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

<code class="lang-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;
    }
</code>

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

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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.