;------------------------------------------------------------------------------ ; NAME: REMOVE_CHARS ; ; PURPOSE: To remove all characters from the given string as specified by ; the parameter array ; ; CALLING SEQUENCE: Result = REMOVE_CHARS (text, param) ; ; INPUTS: ; Text: String of characters to be cleaned ; Param: A string array of characters to be removed from text ; OUTPUTS: ; Result: String characters removed of all unwanted characters ; ; OPTIONAL INPUTS: none ; ; EXAMPLE: ; To remove all unwanted characters as defined by param: ; IDL> param = ['"',',',')','('] ; IDL> result = REMOVE_CHARS ("this, here (contained)",param) ; IDL> print, result ; this here contained ; ; PROCEDURES USED: none ; ; MODIFICATION HISTORY: ; Written by: P. Khetarpal [Jan 15, 2003] ; Last modified: L. Nagdimunov [Jan 23, 2015] ; ; For a complete list of modifications, see changelog.txt file. ; ;------------------------------------------------------------------------------ function REMOVE_CHARS, text, param ; initialize variables: length = strlen(text) if (length NE 0) then begin ; initialize variables: btext = byte(text) bparam = byte(param) clength = n_elements(bparam)-1 ; process string and remove unwanted chars: for c = 0, clength do begin pos = where (btext NE bparam[c]) if (pos[0] NE -1) then begin btext = btext[pos] endif else begin btext = 0B endelse endfor text = string(btext) endif return, text end