? PATTERNTRAN("1st-title: ANAME-HER : 3520931 place[21~22]", "(\[\d*).(\d*\])","$1.$2") ? PATTERNTRAN("1st-title: ANAME-HER : 3520931 place[99 100]", "(\[\d*).(\d*\])","$1.$2") ? PATTERNTRAN("1st-title: ANAME-HER : 3520931 place[35-36]", "(\[\d*).(\d*\])","$1.$2")There is no need to identify the separator character as a group. Note that the dot in the pattern represents "any character except line breaks", but in the replacement string it corresponds to a real dot. Also, all matches are being replaced (this could be changed by setting differently the .Global property).
? PATTERNTRAN("foo foo bar", "foo","mars")Finally, a great resource to experiment with regular expressions: http://regexr.com/