>a = '12......34...56...6..5.' >DO WHILE !EMPTY(OCCURS('..',a)) > a=STRTRAN(a,'..','.') >ENDDO &&!EMPTY(OCCURS('..',a)) >?a >>but I search for something without loop.
>> >>a = '12...34...56...' >>? StringSearchAndReplace(a, '..', '.') >> >>*------------------------------------------------------------------------------- >>function StringSearchAndReplace(Searched, SearchFor, ReplaceWith, IgnoreCase) >> >> local i, Offset, SearchForLength, ReplaceWithLength >> >> SearchForLength = len(SearchFor) >> ReplaceWithLength = len(ReplaceWith) >> Offset = 1 >> >> do case >> case IgnoreCase >> i = atc(SearchFor, substr(Searched, Offset)) >> do while !empty(i) >> i = i + Offset - 1 >> Searched = stuff(Searched, i, SearchForLength, ReplaceWith) >> Offset = Offset + ReplaceWithLength >> i = atc(SearchFor, substr(Searched, Offset)) >> enddo >> otherwise >> i = at(SearchFor, substr(Searched, Offset)) >> do while !empty(i) >> i = i + Offset - 1 >> Searched = stuff(Searched, i, SearchForLength, ReplaceWith) >> Offset = Offset + ReplaceWithLength >> i = at(SearchFor, substr(Searched, Offset)) >> enddo >> endcase >> >> return Searched >>endfunc >>*-------------------------------------------------------------------------- >>