2011-02-02 5 views
0

하나의 preg_match 스크립트에 "아무리 크게"두 개를 가질 수 있습니까?

if(preg_match('#<tr>(.*?)<td align="center" width="90%" valign="top">(.*?)<td align="center" width="90%" valign="top">#s',$result,$array)) { ... } 

이 있고 $ 배열에 쓰여지는 두 번째 (.*?) 만 갖고 싶을 때 무엇을 할 수 있습니까? 처음 (.*?)를 바꿔야 만 할 때, preg_match에게 <tr><td align="center" ...

사이에 어떤 것이 든 상관 없다고 말하고 싶을 때 도움을 청합니다! phpheini

답변

0

당신은 (?:.*?)

+0

완벽한과 비 캡처 그룹을 가질 수 있습니다, 감사합니다! 또한이 URL로부터 어떻게 URL을 얻을 수 있는지 알 수 있습니까? preg_match ('# referer \ .php \? url = (. *?) # s', $ result, $ array2) $ 결과의 전체 데이터는 "referer.php? url = http : //www.example.com"코드를 찾고 http://www.example.com을 제공합니다. – phpheini

+0

? *는 욕심이 많지 않으므로 가능한 한 적은 입력 문자 (. *)로 나머지 URL을 먹거나 ([^ &] *)는 다음 앰퍼샌드까지 끝내거나 끝낼 것입니다 URL의 –

관련 문제