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