cURL을 사용하여 데이터 테이블이 있는 페이지를 가져옵니다. TR 아래의 모든 셀을 가져오는 한 다음 방법을 사용하세요
<code>$content = 内容; preg_match_all('/<td>(.*?)<\/td>/',$content,$res);</code>
하지만 일치하지 않는 두 가지 상황이 있습니다
<code><td> 内容 </td></code>
및
<code><td class="sorting_1"> 未付 </td></code>
여백이 많은 셀과 클래스가 있는 셀은 왜 매칭이 안되는지 모르겠네요? 정규화하는 방법을 모르기 때문에 TD와 완전히 일치할 수 있는 패턴을 찾아야 합니다. 또 다른 질문이 있습니다. 하나는 다양한 조건에서 데이터를 필터링하는 데 사용되며 다른 하나는 데이터가 들어 있는 테이블만 일치시키는 데 사용됩니다.
cURL을 사용하여 데이터 테이블이 있는 페이지를 가져옵니다. TR 아래의 모든 셀을 가져오는 한 다음 방법을 사용하세요
<code>$content = 内容; preg_match_all('/<td>(.*?)<\/td>/',$content,$res);</code>
하지만 일치하지 않는 두 가지 상황이 있습니다
<code><td> 内容 </td></code>
및
<code><td class="sorting_1"> 未付 </td></code>
여백이 많은 셀과 클래스가 있는 셀은 왜 매칭이 안되는지 모르겠네요? 정규화하는 방법을 모르기 때문에 TD와 완전히 일치할 수 있는 패턴을 찾아야 합니다. 또 다른 질문이 있습니다. 하나는 다양한 조건에서 데이터를 필터링하는 데 사용되며 다른 하나는 데이터가 들어 있는 테이블만 일치시키는 데 사용됩니다.
한 줄 모드에서는 줄바꿈을 일치시킬 수 없습니다.
<code>\s 匹配任意的空白符 \S 匹配任意不是空白符的字符</code>
하나의 예에서 추론을 이끌어내고 td를 클래스와 일치시킵니다
<code>/<td[\s\S]*?>([\s\S]+?)<\/td>/</code>
테이블 중 하나를 일치시키기 위해 하나의 예에서 추론을 도출할 수도 있습니다. 먼저 모든 내용의 테이블을 배열로 일치시킵니다.
<code>/<table[\s\S]*?>([\s\S]+?)<\/table>/</code>
그럼 원하는 숫자에 따라 다르며, 위의 일반 매칭 숫자를 사용하세요.
앞서 말했듯이 한 가지 예를 통해 추론해 보세요!
<code>$pattern = "/<td.*?>([\s\S]*?)<\/td>/";</code>
저도 잘 못하는데 할 수 있을 것 같아요