티스토리 뷰


파워빌더 한글문자 자르기




아래 함수는 문자열을 byte 단위로 잘라주는 역활을 하는 함수입니다.

한글은 2byte로 인식되기 떄문에 아래 ex)에 나와있는 예로 "1가나다라" 를 4byte로 자르면

"1가" 만 Return 되어집니다.

"1가"는 3byte지만, 4byte로 잘랐을 경우 한글이 깨지므로, 글자가 꺠지지 않는 한도로 잘라서 Return하도록 되어있습니다.

 

/* --------------------------------------------------------------------- */

1. Function Name : gf_hangle_truncate

2. Input Arguments : String as_str

Integer ai_len

3. Access Type : Public

4. Return Value : String

5. Logic Note : 문자열을 지정된만큼 잘라냄

6. EX) sle_1.text = gf_hangle_truncate("1가나다라",4) => "1" return

/* --------------------------------------------------------------------- */

Int li_i, li_len

String ls_rtn

li_len = len(as_str)

ls_rtn = ""

li_i = 1

DO WHILE li_i < ai_len AND li_i <= li_len

IF ASC(MID(as_str, li_i, 1)) >= 160 THEN //한글, 특수문자

IF ai_len >= li_i + 1 THEN

ls_rtn += MID(as_str,li_i,2)

li_i++

ELSE

Exit

END IF

ELSE //숫자, 영문자

ls_rtn += MID(as_str, li_i, 1)

END IF

li_i++

LOOP

Return ls_rtn

 

 

http://time_series.blog.me/110103256316 

메르치변 님의 블로그 참조

파워빌더 한글문자 자르기 파워빌더 한글문자 자르기 파워빌더 한글문자 자르기 파워빌더 한글문자 자르기



댓글