Some useful String functions

Discussion in 'Free Source Codes' started by Raju Bhanushali, Apr 22, 2015.

    
  1. Raju Bhanushali

    Raju Bhanushali New Member


    Some string functions. May be useful.
     

    Attached Files:



  2. mahgs

    mahgs Member


    Dear Raju Sir:

    How to use this Functons ,Please Give some exambles
     


  3. Raju Bhanushali

    Raju Bhanushali New Member


    [#Menu: Gateway of Tally]
    Item : Functions : CALL : StringFunctionsExamples

    [Function:StringFunctionsExamples]
    10 : Log:$$Left:"The quick brown fox jumps over the lazy dog":6;Result "The qu" 6 Characters from Lef
    20 : Log:$$Right:"The quick brown fox jumps over the lazy dog":6;Result "zy dog" 6 Characters from Right
    30 : Log:$$Mid:"The quick brown fox jumps over the lazy dog":12:4;Result "rown"4 Characters from 12th character
    40 : Log:$$Substitute:"The quick brown fox jumps over the lazy dog":"brown":"BROWN";Result "The quick BROWN fox jumps over the lazy dog" replaces brown with BROWN

    [Function:Left]
    Parameter:sSource:String
    Parameter:nBytes:Number
    Returns:String

    10:Return:$$StringPart:##sSource:0:##nBytes

    [Function:Right]
    Parameter:sSource:String
    Parameter:nBytes:Number
    Returns:String

    10:Return:$$StringPart:##sSource:($$StringLength:##sSource - ##nBytes):##nBytes

    [Function:Mid]
    Parameter:sSource:String
    Parameter:nStart:Number
    Parameter:nBytes:Number
    Returns:String

    10:Return:$$StringPart:##sSource:(##nStart-1):##nBytes

    [Function:Find]
    Parameter:sTextToFind:String
    Parameter:sSource:String
    Variable:lFound:Logical
    Variable:nReturnValue:Number
    Variable:nLenTTF:Number
    Variable:sTempString:String
    Returns:Number

    01 : Set:nReturnValue:0
    10 : Set:lFound:(##sSource containing ##sTextToFind)
    20 : If : ##lFound
    30 : Set:nLenTTF:$$StringLength:##sTextToFind
    40 : While:##nReturnValue < $$StringLength:##sSource
    50 : Increment:nReturnValue:1
    60 : Set:sTempString:$$Mid:##sSource:##nReturnValue:##nLenTTF
    70 : If:##sTextToFind=##sTempString
    80 : Break
    90 : End If
    100 : End While
    110 : End If
    120 : Return:##nReturnValue

    [Function:Substitute]
    Parameter:sSource:String
    Parameter:sSearch:String
    Parameter:sReplaceWith:String
    Variable:lFound:Logical
    Variable:nFoundAt:Number
    Variable:sReturnValue:String
    Variable:sTempString:String
    Variable:sLeftString:String
    Variable:sRightString:String
    Variable:nLenTempString:Number
    Returns:String
    Variable:i:Number

    01 : Set:sReturnValue:""
    02 : Set:sTempString:##sSource
    03 : Set:i:0
    10 : Set:lFound:(##sTempString containing ##sSearch)
    20 : While:##i<1;##lFound
    30 : Set:nLenTempString:$$StringLength:##sTempString
    40 : Set:sReturnValue:$$left:##sTempString:($$Find:##sSearch:##sTempString-1) + ##sReplaceWith + $$Right:##sTempString:(##nLenTempString-($$Find:##sSearch:##sTempString)+1-$$StringLength:##sSearch)
    50 : Set:sTempString:##sReturnValue
    60 : Set:lFound:(##sTempString containing ##sSearch)
    61 : Increment:i:1
    70 : End While
    80 : Return:##sReturnValue
     


  4. Raju Bhanushali

    Raju Bhanushali New Member


    [Function:Substitute]
    Parameter:sSource:String
    Parameter:sSearch:String
    Parameter:sReplaceWith:String
    Variable:lFound:Logical
    Variable:sReturnValue:String
    Variable:sTempString:String
    Variable:nLenTempString:Number
    Returns:String
    Variable:i:Number

    01 : Set:sReturnValue:##sSource
    02 : Set:sTempString:##sSource
    03 : Set:i:0
    10 : Set:lFound:(##sTempString containing ##sSearch)
    20 : While:##lFound
    30 : Set:nLenTempString:$$StringLength:##sTempString
    40 : Set:sReturnValue:$$left:##sTempString:($$Find:##sSearch:##sTempString-1) + ##sReplaceWith + $$Right:##sTempString:(##nLenTempString-($$Find:##sSearch:##sTempString)+1-$$StringLength:##sSearch)
    50 : Set:sTempString:##sReturnValue
    60 : Set:lFound:(##sTempString containing ##sSearch)
    61 : Increment:i:1
    70 : End While
    80 : Return:##sReturnValue


    ;; Replacement for "Substitute" function
    ;; Earlier was intermediate version wrongly included while posting
     


Share This Page