채택완료

정규식문의드립니다.

2015-11-13 (금) 22:45:04 4,276

[지도]어쩌구저쩌구[/지도]

위 내용이 본문에 삽입된경우

1. 빨간부분만 뽑기

2. [지도]어쩌구저쩌구[/지도] 위 내용 본문에 지워서 출력하기

즉 $wr_content 에 위 내용이 첨부가 된경우

출력되는부분에서 함수를 사용하여

get_map($view['wr_content']);

위와같이 get_map 함수를 만들려고 합니다.

본문내용에서 위와같이 [지도]시작[/지도]끝부분이 감지된다면

빨간부분을 값으로 뽑은뒤, [지도][/지도]까지 지운상태로 나머지 부분을 출력하면 됩니다. 

|

답변 2개

채택된 답변
+20 포인트

코드를 보기 쉽게 하기 위하여 []를 <>로 수정했습니다.

$wr_contents = "무궁화 <지도>어쩌구저쩌구1</지도> 화려강산 <지도>어쩌구저쩌구2</지도>";

$pattern = '#<지도>([^(</지도>)]+)</지도>#u';

preg_match_all($pattern, $wr_contents, $m); 

print_r($m);


결과 :
Copy
Array(    [0] => Array        (            [0] => <지도>어쩌구저쩌구1</지도>            [1] => <지도>어쩌구저쩌구2</지도>        )    [1] => Array        (            [0] => 어쩌구저쩌구1            [1] => 어쩌구저쩌구2        ))

대충 다음처럼 작성하면 되지 않나요?

참조만 하세요 ^^

$wr_contents = "무궁화 [ 지도]어쩌구저쩌구[/지도] 화려강산 [지도]어쩌구저쩌구[/지도 ]";

$pattern = "#\[\s*\/?\s*지도\s*\]#i";

echo preg_replace($pattern,'',$wr_contents); 

답변을 작성하려면 로그인이 필요합니다.