문장 특정기호로 나누어서 스타일 지정 질문입니다. 채택완료
데이터베이스에 기다란 글이 저장되어있다고 가정했을때
데이터베이스에서 불러오면서
단어앞에 #이 붙은 단어에는 특정 색깔을 지정해 줄려고 합니다.
예를 들어 #php #스쿨 화이팅입니다. #!!!
이런 글이 있다면 php, 스쿨, !!! 이 단어들은 더 두꺼운 글씨체를 주던가, 색을 바꿔서 나타내려고 합니다.
설명 부탁드립니다 (__ )
댓글을 작성하려면 로그인이 필요합니다.
답변 3개
채택된 답변
+20 포인트
9년 전
</p><p>$str = "#php #스쿨 화이팅입니다. #!!!";
$str = explode(" ", $str);</p><p>$arr = array();
foreach($str as $v) {</p><p> $arr[] = (strpos($v, "#") > -1) ? "<strong>".str_replace("#", " ", $v)."</strong>" : $v;</p><p>}</p><p>echo implode(" ", $arr);</p><p>
정규식을 쓰셔도 되고 이렇게 하셔도 나쁘진 않을 것 같습니다.
로그인 후 평가할 수 있습니다
답변에 대한 댓글 3개
�
9년 전
이렇게 쓰니깐 #이 없어져서 보이는거 같습니다. 문법이 어디가 틀린걸까요? 아 그리고 가끔씩 스페이스 공백을 못읽고 스트롱 태그가 먹혀버리는 애들이 있는데 왜 그렇죠 ㅠㅠ?
�
9년 전
아 제가 str_replace를 했네요.
str_replace("#", " ", $v)
이 부분을 다 지우고 $v만 남기면 돼요.
str_replace("#", " ", $v)
이 부분을 다 지우고 $v만 남기면 돼요.
�
9년 전
계란님 하나만 더 물어보고 싶은게 있습니다. #php #스쿨 화이팅입니다. #!!!"
이런식의 글은 문제 없이 잘 빠져 나오는데 예를들어 #이 먼저 붙은게 아니라
php#스쿨 화이팅입니다#!!! 이렇게 #전에 글이 띄어쓰기 안되어 있으면 앞 글까지 strong 이 먹어버리는데 해결 방법이 있을까요 ?
이런식의 글은 문제 없이 잘 빠져 나오는데 예를들어 #이 먼저 붙은게 아니라
php#스쿨 화이팅입니다#!!! 이렇게 #전에 글이 띄어쓰기 안되어 있으면 앞 글까지 strong 이 먹어버리는데 해결 방법이 있을까요 ?
댓글을 작성하려면 로그인이 필요합니다.
port443
9년 전
</p><p><?php</p><p> </p><p>$re = "/(#[a-힣]*)/ui"; </p><p>$str = "#강아지 고양이 #aaa #AAA #흐물흐물"; </p><p>preg_match_all($re, $str, $matches);</p><p> </p><p> </p><p>foreach ($matches['0'] as $m) {</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>echo "<strong>".$m."</strong> ";</p><p>}</p><p>?></p><p>
이거 수정해서 쓸 수 있을련지..
로그인 후 평가할 수 있습니다
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
port443
9년 전
로그인 후 평가할 수 있습니다
답변에 대한 댓글 2개
�
9년 전
<?= preg_match_all("/^# $/", $best_wr_content[$i],$match); ?>
정규식 이용해서 할려구 하는데 이 구문이 안맞나봐요... ㅠㅠ 도움좀
정규식 이용해서 할려구 하는데 이 구문이 안맞나봐요... ㅠㅠ 도움좀
p
port443
9년 전
https://regex101.com/r/nI9cC9/2
여기에 tools 에 code genertor 눌러보세요.
저 정규식으로 테스트 한거라서 흠..
여기에 tools 에 code genertor 눌러보세요.
저 정규식으로 테스트 한거라서 흠..
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인전체 질문 목록
채택
채택
답변대기
답변대기
채택
채택
채택
채택
채택
채택
채택
채택
답변대기
채택
답변대기
답변대기
채택
채택
답변대기
채택