특정 문구를 찾아서 추출 하는방법이 필요합니다. 채택완료
몇시간 삽질을 해도 안되서 질문을 드립니다. ㅠㅠ
write_update.head.skin 에서 처리를 해주는데요.
wr_content 를 불러내면 html 페이지 안에 이런 문구가 있습니다.
여기서
wr_1 에 넣어 주려고 하는데요.
// $wr_content 변수에 로드될 HTML (예시) $wr_content = '
// 정규식을 사용하여 텍스트 추출 preg_match('/
// 추출한 텍스트를 wr_1 변수에 저장 $wr_1 = $matches[1];
이렇게 해주면 wr_1에 내용은 잘들어가는데 본문 내용도 32개 만 남습니다. (테스트로 강제로 값을 넣어 줬습니다 )
여기서
// 정규식을 사용하여 텍스트 추출 preg_match('/
// 추출한 텍스트를 wr_1 변수에 저장 $wr_1 = $matches[1];
이렇게만 해주면 아무런 변화가 없어요..
제가 뭘 잘못하고 있는지 모르겠습니다..ㅠㅠ
wr_content 에 여러가지 내용이 있는데 저 문구를 찾아야 하는 부분인데 못찾고 있어서 그런걸까요?
참고로 //$wr_content = str_replace('초과수당', '', $wr_content);
이거는 잘되는데 preg_match는 딱 지정된 문구만 있어야 작동 하는건가요?
답변 2개
다음 코드는
</p>
<p><?php
// $wr_content 변수에 로드될 HTML (예시)
$wr_content = '<li><span class="stock">재고</span>32개</li>';</p>
<p>// 정규식을 사용하여 텍스트 추출
preg_match('/<li><span class="stock">재고<\/span>(.*?)<\/li>/', $wr_content, $matches);</p>
<p>// 추출한 텍스트를 wr_1 변수에 저장
$wr_1 = $matches[1];</p>
<p>
다음처럼 각각 기대하는 올바른 값이 담깁니다.
</p>
<p>// $wr_content : <li><span class="stock">재고</span>32개</li>
// $wr_1 : 32개</p>
<p>
문제가 있다면 $wr_content 변수가 다른 어느곳에서 조작되고 있는지 확인이 필요할것 같습니다.
아무런 변화가 없는 경우는 정규식에 의해 파싱될 텍스트 규칙이
초기 $wr_content 변수에 없는 경우가 있을것 같습니다.
답변에 대한 댓글 6개
예시 코드는 잘못되지 않은 올바른 코드이며
문제가 있다면 예시 코드가 아닌 다른부분에 있을 가능성이 있습니다.
$wr_content 에 <p>재고 32개</p> 처럼
미리 정의된 정규식에 해당하지 않는 문자열이 담겨있다면 예시 코드는 동작하지 않을것이고
별개로 $wr_content 가 넘어온값 그대로 저장되지 않는다면
다른 어딘가에서 $wr_content 가 조작되고 있을 가능성이 있습니다.
직접 하나하나 디버깅하면서 확인이 필요할것 같습니다.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
저 wr_content 안에 저 문구가 있는거거든요. 저 문구만 있는게 아니고 여러 내용이 들어 있는데 저문구만 찾아서 wr_1 에 업데이트 됐으면 좋겠습니다.
$wr_content = '<li><span class="stock">재고</span>32개</li>';라는 값을 직접 입력 하는게 아니거든요... 제가 뭔가 잘못 이해 하고 있는걸까요?