;; | --------------------------------------------------------------------------- ;; | ST_SearchRepl ;; | --------------------------------------------------------------------------- ;; | Function : Perform a complete search and replace operation on a string ;; | Arguments : 'SearchStr' - String to check ;; | 'Pattern' - Pattern to search ;; | 'CaseSens' - If T, the search will be case-sensitive else no ;; | 'EmbedSrch' - If T, the search will be an embedded search, ;; | else no ;; | 'ReplStr' - The string to replace, If no replace operation ;; | is to be performed, this should be nil ;; | Return : The string after the pattern has been replaced. ;; | This is a case-sensitive search and replace ;; | Updated : April 23, 2004 ;; | e-mail : rakesh.rao@4d-technologies.com ;; | Web : www.4d-technologies.com ;; | --------------------------------------------------------------------------- (defun ST_SearchRepl ( SearchStr Pattern CaseSens EmbedSrch ReplStr / _SearchStr _Pattern Found newStr ) (setq Found nil newStr nil ) (if CaseSens (setq _SearchStr SearchStr _Pattern Pattern ) (setq _SearchStr (strcase SearchStr) _Pattern (strcase Pattern) ) ) (if EmbedSrch (progn (if (setq Found (ST_FindPattern _SearchStr _Pattern)) (progn (if ReplStr (setq newStr (ST_ReplPattern SearchStr Pattern ReplStr CaseSens)) ) )) ) (progn (if (= _SearchStr _Pattern) (progn (setq Found T) (if ReplStr (setq newStr ReplStr) ) )) )) (list Found newStr) )