PowerBuilder Function Is Arithmetic Operator gf_is_arithmetic_operator
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | ///////////////////////////////////////////////////////////////////////////////////////////////////////////// // // Function Name : gf_is_arithmetic_operator // Argument Name : as_source, Arg Type : String, Pass By : Value // Return Type : Boolean /////////////////////////////////////////////////////////////////////////////////////////////////////////////// // // Description: Determines whether a string contains only Arithmetic // Operator characters. /////////////////////////////////////////////////////////////////////////////////////////////////////////////// Long ll_count = 0 Long ll_length Char lc_char[] Integer li_ascii //Check parameters If IsNull(as_source) Then Boolean lb_null SetNull(lb_null) Return lb_null End If //Get the length ll_length = Len (as_source) //Check for at least one character If ll_length = 0 Then Return False End If //Move string into array of chars lc_char = as_source //Perform loop around all characters //Quit loop if Non Operator character is found Do While ll_count ll_count ++ //Get ASC code of character. li_ascii = Asc (lc_char[ll_count]) If li_ascii = 40 Or /* ( left parenthesis */ & li_ascii = 41 Or /* ) right parenthesis */ & li_ascii = 43 Or /* + addition */ & li_ascii = 45 Or /* - subtraction */ & li_ascii = 42 Or /* * multiplication */ & li_ascii = 47 Or /* / division */ & li_ascii = 94 Then /* ^ power */ //Character is an operator. //Continue with the next character. Else Return False End If Loop // Entire string is made of arithmetic operators. Return True |
Good Luck!