> 백엔드 개발 > PHP 튜토리얼 > 求个正则 高难度的

求个正则 高难度的

WBOY
풀어 주다: 2016-06-23 13:29:02
원래의
1135명이 탐색했습니다.


[m:cname]
 

变成 (关键在 如果 上方
[list:cname]
 

变成 



[list:cname]



===============================

如果多层,这个很有挑战性 ,不知道正则行不行 如果行 给多加分



[channel:cname]


[artlist:title]

 


转为


[channel:cname]

   
       [artlist:title]
   

 


 


回复讨论(解决方案)

$s =<<< 'TXT'<!--m:{ $Row=10 $table=Channel $Where=[FatherID]=0 }--><a href="[m:curl]">[m:cname]</a><!--m--> <!--list:{ $Row=10 $table=Channel $Where=[FatherID]=0 }--><a href="[list:curl]">[list:cname]</a><!--list--> <!--channel:{ $row=10 $table=channel  }--><a href="[channel:curl]">[channel:cname]</a><!--artlist:{ $row=6 $cid=[channel:childids] $order=[order] desc,[id] desc }--><a href="[artlist:aurl]">[artlist:title]</a><!--artlist--> <!--channel-->TXT;$p = array(  '/<!--(\w+):{ \$Row=(\d+)(.+)}-->/i',  '/<!--\w+-->/',);$r = array(  '<qlist listname="$1"  row="$2"$3>',  '</qlist>',);echo preg_replace($p, $r, $s);
로그인 후 복사
<qlist listname="m"  row="10" $table=Channel $Where=[FatherID]=0 ><a href="[m:curl]">[m:cname]</a></qlist> <qlist listname="list"  row="10" $table=Channel $Where=[FatherID]=0 ><a href="[list:curl]">[list:cname]</a></qlist> <qlist listname="channel"  row="10" $table=channel  ><a href="[channel:curl]">[channel:cname]</a><qlist listname="artlist"  row="6" $cid=[channel:childids] $order=[order] desc,[id] desc ><a href="[artlist:aurl]">[artlist:title]</a></qlist> </qlist>
로그인 후 복사

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿