!"#$%&'()*+,-./{|}~
function do_it() local regexObj regexObj = createobject('VBScript.RegExp') regexObj.Global = .t. regexObj.IgnoreCase = .f. regexObj.Pattern = '(\[\d{1,4})([ \x21-\x2f\x7b-\x7e])(\d{1,4}\])' local s, x s ='1st-title: ANAME-HER : 3520931 place[4443 4444]' &&&XXX ?s x = m.regexObj.Replace(m.s, '$1.$3') ?x endfunc && separators to clipboard - local separators, i separators = '' for i = 0x21 to 0x2f separators = m.separators + chr(m.i) endfor for i = 0x7b to 0x7e separators = separators + chr(m.i) endfor _cliptext = m.separatorsThis is also a possibility - separator is any chat outside _ a to z, A to Z and 0 to 9
regexObj.Pattern = '(\[\d{1,4})(\W)(\d{1,4}\])'>actually your solution greg does well but does not replace a space with a dot whereas Antonio's solution does.