> 백엔드 개발 > PHP 튜토리얼 > 正则中怎么连续匹配一个或多个

正则中怎么连续匹配一个或多个

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
풀어 주다: 2016-06-13 12:52:41
원래의
1487명이 탐색했습니다.

正则中如何连续匹配一个或多个?
在抓火车票价的时候碰到一个这样的问题,有的火车票价只出来一种,有的可能出来几种,如何用一个表达式连续匹配出一个或多个的情况?

比如 ,下面是三种可能出现的结果

"

  硬座234元
  硬卧391/407/420元
  软卧613/638元
";
"  硬座234元
  硬卧391/407/420元
";
"  硬座234元
";

我想用下面这个方法,但似乎不行,只能得到最后面一个票价,为什么呢
preg_match('#(\s+(.*?)
)+#is', $singleShift, $piaojia);//票价

求教各位了,谢谢


------解决方案--------------------
$singleShift = "<td>  硬座234元<br />  硬卧391/407/420元<br />  软卧613/638元<br /></td>";<br />
preg_match_all('#(?:\s+(.*)<br />)+#isU', $singleShift, $piaojia);<br />
print_r($piaojia[1]);
로그인 후 복사
Array
(
    [0] =>  硬座234元
    [1] =>  硬卧391/407/420元
    [2] =>  软卧613/638元
)
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿