CMS/프레임워크 | XE 1.x |
---|---|
개발 언어 | PHP 5.x |
http://m.lottesuper.co.kr/handler/cc/Store-Detail?strNo=110684
페이지 하단의 아래 해당 값을 snoopy를 이용해서 텍스트로 가져오고 싶습니다.
1. 추출을 원하는 텍스트 부분과 해당 부분 소스
<div class="close-date" id="closeDate" style="display: block;">
<div class="month">12월</div>
<div class="info">
<strong id="mapEntrNm2">가락점</strong> 의
<p>휴점일은 <em class='date' id='holiday'>9(일)</em> 입니다.</p><p>휴점일은 <em class='date' id='holiday'>23(일)</em> 입니다.</p>
</div>
2. 출력 결과
110684--가락점의 휴점일은 9(일)입니다. 휴점일은 23(일)입니다.
3. 소스
<?php
$x=array("110684","문서번호들..."
);
foreach ($x as $value)
{
//변수 초기화
unset($data);
include_once 'Snoopy.class.php';
$snoopy=new snoopy;
$snoopy->fetch('http://m.lottesuper.co.kr/handler/cc/Store-Detail?strNo='.$value);
$result = $snoopy->results;
print_r($value);
echo "--";
echo preg_replace('???????', '', $result);
echo "<br>";
}
?>
마트몬
Lv. 8
댓글 6
저도 배우는 과정이라 이정도만...
답변감사합니다.말씀 해 주신대로
echo preg_replace('/\d*\(.\)/g', '', $result);
하고 결과를 보면
110684--
문서번호들 --
처럼 값이 나오질 않는데 혹시 백슬래쉬를 사용해도 되는거죠?
preg_replace 함수는 찾아서 바꾸기 함수로 압니다.
문자열 찾기 함수로 검색해서 예제와 적용해보세요.
답변 감사합니다.
<?php
$x=array("110684","110126"
);
foreach ($x as $value)
{
//변수 초기화
unset($data);
include_once 'Snoopy.class.php';
$snoopy=new snoopy;
$snoopy->fetch('http://m.lottesuper.co.kr/handler/cc/Store-Detail?strNo='.$value);
$result = $snoopy->results;
$rex="/\d*\(.\)/g";
preg_match_all($rex,$result,$data);
print_r($value);
echo "--";
print_r($data);
echo "<br>";
}
?>
이렇게도 해봤는데 결과가
110684--
110126--
이런식으로 아무 값이 안나오네요. 혹시 답변 주신 댓글 내 이미지는 정규식으로 바꿔주는 변환 사이트 아니면 소프트웨어인가요?
정규식 스터디 사이트입니다. ^^
https://regexr.com/
감사합니다.
이래저래 짜깁기해서 하다보니 문제가 해결되었습니다.