이거 가능한가요? #앞에 다른 글자 있다면 스페이스 하나 추가... 웹지기 2017.04.05 04:09 378 0 5 본문에.. #abcd#efg --> #abcd #efg #abcd #efg ->> 추가없이 유지 입력시점에는 어려우니 본문출력할때라도.. 스크립트로 가능하다면 부탁드려요...
Q&A 저의 홈페이지를 XE_Official 레이아웃로로 했는 데 왼쪽 로그인과 조회수 밑에 홈 이라는 글바로밑에 "로그인/가입" 위젯이 제대로 설정이 안되어 해결책을 찾고 있습니다. youshine 26.07.31 0 5
Q&A 제딴엔 신속히 일주일 안에 XE1.11.6 에서 Rhymix-2.1.35로 3개의 도메인을 성공적으로 잘 이전했다고 생각하고 있었는데 오래된 선우 레이아웃을 서서 만든 홈페이지라그런지... youshine 26.07.27 0 0
댓글 5
PHP에서 처리한다면 $content = preg_replace('/(?<!\s)#/', ' #', $content); 이렇게 하시면 됩니다.
그러나 https://xetown.com/qna/554300#comment_554314 이런 주소까지
중간에 빈칸이 들어가 버릴 수도 있어요.
※ 정규식 중간에 불필요한 공백이 들어가서 방금 고쳤습니다.
해시태그 애드온에 추가하는 방법을 부탁드리고 싶긴 한데 해시태그 애드온 자료를 열어보셔야 해서....
return match.replace(/#([\w|ㄱ-ㅎ|ㅏ-ㅣ|가-힣\-]+)/g, function(m, p1) {
return newval+encodeURIComponent(p1)+'" '+(opts[3]?'target="_blank" ':'')+'style="color:'+opts[2]+';padding:1px 3px;border:1px solid #0000FF;border-radius:8px;text-decoration:none;" class="hashtag">#'+p1+'</a>';
});
});
저희가 사용하는 해시태그 애드온에서 사용하는 js 의 일부입니다.
여기서 관여를 할 거 같은데요..
맨 앞에 content = content.replace(........ 부분을
content = content.replace(/(?!\s)(.)(#)/g, '$1 $2').replace(........ 이렇게 바꿔 보세요.
자바스크립트는 lookbehind assertion을 지원하지 않아서 정규식이 좀 지저분해지네요.
해시태그에 디자인을 좀 해줬는데 태그를 전부 붙여서 적은 경우 가로길이가 넘쳐도 태그단위로 줄바꿈해 주는 것이 되지 않아 태그단위로 띄어쓰기 안하는분들께 태그넣을때 띄어쓰기 부탁을 드리기 애매했는데요. 이것으로 해결 될 듯 합니다.