반응형

PowerBuilder 에서 string ls_a =  ' 가 나 다 ' 또는 string ls_b ' a b c ' 를 Trim 을 사용해서 공백을 제거하면

ls_a = '가 나 다'

ls_b = 'a b c'

이렇게 표현됩니다.

문자 사이의 공백은 제거 되지 않습니다.

PowerBuilder 함수에서는 이것을 지원하지 않습니다.

그래서 사용하는 방법이 함수로 만들어서 사용하는 방법입니다.

저도 카페 활동과 선배들의 소스를 보면서 참고해서 사용하고 있습니다.

자 그럼 아래를 참고 하세요.

1) 함수

//Function Name : func_replace

//Argment Values
//string as_text
//string as_target
//string as_data

//return string

long start_pos=1
String ls_replace ,new_str,old_str

ls_replace = as_text


start_pos = Pos(as_text, as_target, start_pos)

 

DO WHILE start_pos > 0

    ls_replace = Replace(ls_replace, start_pos, Len(as_target), as_data)
    start_pos = Pos(ls_replace, as_target, start_pos+Len(as_data))

LOOP


return ls_replace

2) 본문

string ls_string

ls_string = '가 나 다'
ls_string = func_replace(ls_string,' ', '')

ls_string = 'a b c'
ls_string = func_replace(ls_string,' ', '')

반응형
반응형

다른프로그램을 사용하다가 MS-SQL을 사용할때면 IndexOf 기능을 필요로 할때가 많습니다. 저같은 경우도 그러한 경우입니다. 그래서 이렇게 정리를 해두먼 어떨까 해서 정리를 해두었습니다. 다들 오늘도 즐거운 코딩하시기 바랍니다.

 

MSSQL 특정문자찾기

MSSQL 특정글자찾기

MSSQL 특정 문자 자릿수 찾기

MSSQL 특정 글자 자릿수 찾기


 - IndexOf 처럼 사용할 때

SELECT CHARINDEX('문자', '컬럼')

ex) SELECT CHARINDEX('b', 'abcde')

Result)  2

 

 

 

 - LastIndexOf 처럼 사용할 때

 ex) SELECT CHARINDEX('b', reverse('abcde'))

Result)  4


반응형

+ Recent posts