[ 파워빌더.공통함수 - isNumber ]

 

☞   

 

생각해보니... '-', '.' 등도 생각해야하고... 혹시 이게... '00.0.'  이라던지.... '00-00'

 

이렇게 되어 있어도 하나씩 체크해서는 숫자로 판단할 것 같더라구요~

 


/*============================================================*//* Function Name : BOOLEAN f_IsNumber (as_arg)                     */
/* Argument  Name :   as_arg                                                   */
/*               Type      STRING                                                   */
/*     Return Type :   BOOLEAN                                                */
/*============================================================*/
String ls_c
long ll_len, ll_a

ll_len = Len (as_str)

if ll_len = 0 then
   return FALSE
else
   for ll_a = 1 to ll_len
      ls_c = mid (as_str, ll_a, 1)
      choose case ls_c
         case '0' to '9', '-', '.'
         case else
             return FALSE
      end choose
   next
end if
 
if isnumber(as_str) then
   return TRUE
else
   return FALSE
end if
 

 

☞  

 

거냥 숫자아닌 다른 문자는 제하는 함수 만드는것이 편하지 않을까요?
대충 ....
/* string OnlyNumber(string as_String)
숫자 이외 모든 문자 지우기
*/
string ls_tmp, ls_char, ls_String = ''
ls_tmp = Trim(as_String)
Do While len(ls_tmp) > 0
ls_char = Left(ls_tmp,1)
choose case ls_char
case '0','1','2','3','4','5','6','7','8','9'
ls_String += ls_char
end choose
ls_tmp = Mid(ls_tmp,2)
Loop
return ls_String

 

 

Posted by 농부지기
,