한글로 메세지를 보여줄 때 동적으로 메세지를 붙이죠.

이럴 때 "우야꼬"라는 메세지가 들어오면 "우야꼬는" 으로 해줘야하고

"김깐죽"이라는 메세지가 들어오면 "김깐죽은"으로 해줘야되는 "은, 는" 문제가 있습니다.

이럴 때 사용할 수 있는 유틸입니다.

사용법은 다음과 같습니다.

var result: String = MessageUtil.replace( 원문, 치환약어, 치환할 문자 );


import kr.as3.utils.MessageUtil;

const
HELLO_MESSAGE: String = "안녕, 난 $NAME|이라고,라고|해^^ \n날 $USER|으로,로| 불러주렴~";

var converted: String = HELLO_MESSAGE;
converted = MessageUtil.replace( converted, "$NAME", "박종희" );
converted = MessageUtil.replace( converted, "$USER", "김소심" );

// 안녕, 난 박종희라고해^^
// 날 김소심으로 불러주렴~


이름과 닉네임을 바꿔서 대입해보면

import kr.as3.utils.MessageUtil;

const
HELLO_MESSAGE: String = "안녕, 난 $NAME|이라고,라고|해^^ \n날 $USER|으로,로| 불러주렴~";

var converted: String = HELLO_MESSAGE;
converted = MessageUtil.replace( converted, "$NAME", "신진숙" );
converted = MessageUtil.replace( converted, "$USER", "파퓨표" );

// 안녕, 난 신진숙이라고해^^
// 날 파퓨표 불러주렴~

위처럼 단어에 알맞은 조사를 판단해서 붙여줍니다.

메세지 작성 방식은 이렇습니다.

메세지 중간에 치환할 텍스트 별명(alias)를 지정해주고

단어에 따라서 조사가 바뀌어야할 부분이 있다면 "|"로 시작해서 콤마(,)로 구분해서 "|"로 닫아줍니다.

즉 단순히 단어만 치환하고자 할 때는

"안녕 내 이름은 $NAME." -> 안녕 내 이름은 박종희.

조사가 붙어야하는 경우라면

"안녕, 난 $NAME|이라고,라고|해." -> 안녕, 난 우야꼬라고해.  or 안녕, 난 김소심이라고해.

라고 작성해주면 됩니다.



자 이제부터 사용자 친화적인 메세지를 전달해봅시다~!!


소스 다운 ㄱㄱ싱







편하죠?
저작자 표시 비영리 동일 조건 변경 허락
신고
  1. Favicon of http://asnike.com 김깐죽 2010.03.22 22:26 신고

    결국 만드셨군요 ㅋㅋㅋㅋ

  2. Favicon of http://blog.naver.com/setimets 쫑쫑쫑 2010.03.22 22:41 신고

    박종희 = 김소심 ?????? 으잉 ㅋ? 제 성까지 개명하시나요 ㅋ? 4pt 소문자 a형 형 흥 ㅋ

  3. Favicon of http://blackiz.tistory.com Blackiz 2010.03.22 23:30 신고

    우와아앙. 형 이거 좋은데요? 근데 언제 써먹지... 써먹고 싶은데..

    • Favicon of http://wooyaggo.tistory.com 우야꼬  2010.03.23 11:17 신고

      아냐 서비스 하다보면 언젠간 반드시 필요할거야.
      국내서비스라면 필수지!!

  4. Favicon of http://rinn.kr 퍼플린 2010.03.23 10:28 신고

    멋지네요~ 초성검색도 간단하게 될듯

    소스중에 21 하고 28 부분은 잘 모르겠군요 -ㅅ-;; 이거 유니코드에 대한 이해가 선행되야 할듯
    감사합니다~

    • Favicon of http://wooyaggo.tistory.com 우야꼬  2010.03.23 11:18 신고

      네 초성검색도 divide나 merge메서드 사용하시면 되요.
      유니코드를 다 보실 필요는 없고
      이렇게 분리되는구나~하는 공식만 아시면 쉬우실거에요.
      다만 고려해야될게 한글이 조합형과 완성형이 있다는 거죠 쿨럭...

  5. Favicon of http://vulcan9.tistory.com vulcan 2010.03.23 11:56 신고

    $str|case1, case2| 에서
    case1 에는 $str에 받침(종성)이 있을때,
    case2 에는 $str에 받침이 없을때 들어갈 문자열을
    순서대로 지정해줘야 하네요...
    생각도 못했는데 한글에 이런 규칙이 있다니...ㅎㅎ 재밋게봤어요 ^^

  6. Favicon of http://blog.chanik.com 찬익 2010.03.23 12:17 신고

    한때 텍스트 머드 게임에서는 필수 기능이었던.. ㅋㅋ

  7. 스핀 2010.03.25 15:54 신고

    오홍 희안한다 ㅋㅋ 멋진데 아꽁..!!

  8. 우연히 2010.09.26 08:32 신고

    검색 중 보게 되었는데, 정말 멋집니다.

  9. 따숩소 2011.01.10 12:48 신고

    편해요. ^^b

+ Recent posts