F_IS_PUNCTUATION

///////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Function Name : f_is_punctuation
// Argument Name : as_source, Arg Type : String, Pass By : Value
// Return Type :      Boolean
///////////////////////////////////////////////////////////////////////////////////////////////////////////////
//    Description:   Determines whether a string contains only punctuation
//                        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 Punctuation character is found
Do While ll_count < ll_length
    ll_count ++
   
    //Get ASC code of character.
    li_ascii = Asc (lc_char[ll_count])
   
    If li_ascii=33 Or            /* '!' */         &
        li_ascii=34 Or            /* '"' */         &
        li_ascii=39 Or            /* ''' */         &
        li_ascii=44 Or            /* ',' */         &
        li_ascii=46 Or            /* '.' */         &
        li_ascii=58 Or            /* ':' */         &
        li_ascii=59 Or            /* ';' */         &    
        li_ascii=63 Then         /* '?' */
        //Character is a punctuation.
        //Continue with the next character.
    Else
        Return False
    End If
Loop
   
// Entire string is punctuation.
Return True

0 comments:

Post a Comment