테스트 사이트 - 개발 중인 베타 버전입니다

그런식으로 echo하려면 어떻게해야할까요?? 채택완료

도치즈 11년 전 조회 6,492
"안녕하세요 [도치즈]입니다."

라는 문자열이 들어왔을때

[부터 ]까지의 글자를 진하게해서 출력하고싶은데;; 이런건 어떻게해야할까요??
댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트
11년 전
$str = preg_replace("/(\[.+\])/", "<strong>$1</strong>", $str); 
로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

도치즈
11년 전
헐.... 정규식으로 그렇게 간단하게할 수 있었군요;; ㄷㄷ;; 역시 정규식을 배워놔야겠네요;; ㅠㅠ
감사합니다!!

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

리자
리자 Expert
11년 전
[문자열]...[문자열] 인 경우에는 위의 코드로 치환할수 없으므로 아래와 같은 코드로 사용합니다.

</div>
<div><div><?php</div>
<div>$str = "안녕하세요 [도치즈]입니다. 저는 [치즈] 입니다.";</div>
<div>echo preg_replace("/(\[[^\]]+])/", "<strong>$1</strong>", $str); </div></div>
<div>?></div>
<div>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

도치즈
11년 전
아... 안그래도 그부분은 포기해야하나 고민하고있었는데;;; 감사합니다!! ㅎㅎ

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

echo "안녕하세요 <strong>[도치즈]</strong>입니다.";
로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

도치즈
11년 전
흐음..;; 그런뜻이 아니라요;;
게시판에서 대량으로 그렇게 표시해야할때에요;;

[부터 ]까지의 글자만 해야하는것이기에 그 사이에 어떤 글자가있는지 정확히 모르구요;;
그냥 노가다해서 대충해놧어요;; ㅠㅠ

혹시 이거보다 더 짧고 좋은 소스가 있나해서 질문올려본거였거든요;; ㅎㅎ
감사합니다^^

[code]
if(strstr($list[$i]['subject'], "[") == true && strstr($list[$i]['subject'], "]") == true) {
$strong_start[$i] = stripos($list[$i]['subject'], "[");
$strong_end[$i] = strpos($list[$i]['subject'], "]");

$strong_text[$i] = substr($list[$i]['subject'], $strong_start[$i],$strong_end[$i])."]";

$strong[$i] = "<strong>".$strong_text[$i]."</strong>";
$strong[$i] = str_replace("[","",$strong[$i]);
$strong[$i] = str_replace("]","",$strong[$i]);

$list[$i]['subject'] = str_replace($strong_text[$i],"",$list[$i]['subject']);
$subject_sise[$i] = strlen($list[$i]['subject']);
echo substr($list[$i]['subject'],0,$strong_start[$i]).$strong[$i].substr($list[$i]['subject'],$strong_start[$i],$subject_sise[$i]);
} else {
echo $list[$i]['subject'];
}
[/code]

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

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

로그인