Heim  >  Artikel  >  Backend-Entwicklung  >  正则如何匹配换行前及其换行后内容?

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

WBOY
WBOYOriginal
2016-06-06 20:48:191533Durchsuche

现有数据一份,为:

<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]*

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

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn